basic player movement

This commit is contained in:
Alexey 2025-07-15 20:14:27 +03:00
commit 2ce0a460ac
4 changed files with 58 additions and 7 deletions

View file

@ -1,5 +1,6 @@
[gd_scene load_steps=10 format=3 uid="uid://dwx5tcatj35gu"] [gd_scene load_steps=11 format=3 uid="uid://dwx5tcatj35gu"]
[ext_resource type="Script" uid="uid://dts8lbivkgsmj" path="res://base/scripts/player/player.gd" id="1_1w3ab"]
[ext_resource type="Texture2D" uid="uid://cf7avgppv4kfk" path="res://base/assets/guns/placeholder/static.png" id="1_7s1wv"] [ext_resource type="Texture2D" uid="uid://cf7avgppv4kfk" path="res://base/assets/guns/placeholder/static.png" id="1_7s1wv"]
[ext_resource type="Texture2D" uid="uid://cfw6p5g680c55" path="res://base/assets/guns/placeholder/shoot1.png" id="2_7ptt8"] [ext_resource type="Texture2D" uid="uid://cfw6p5g680c55" path="res://base/assets/guns/placeholder/shoot1.png" id="2_7ptt8"]
[ext_resource type="Texture2D" uid="uid://bwfkjfpk4dwx0" path="res://base/assets/guns/placeholder/shoot2.png" id="3_1w3ab"] [ext_resource type="Texture2D" uid="uid://bwfkjfpk4dwx0" path="res://base/assets/guns/placeholder/shoot2.png" id="3_1w3ab"]
@ -63,13 +64,18 @@ _data = {
&"static": SubResource("Animation_ma1q3") &"static": SubResource("Animation_ma1q3")
} }
[node name="Player" type="RigidBody3D"] [node name="Player" type="CharacterBody3D"]
collision_layer = 2
collision_mask = 3
platform_wall_layers = 1
script = ExtResource("1_1w3ab")
[node name="Collider" type="CollisionShape3D" parent="."] [node name="Collider" type="CollisionShape3D" parent="."]
shape = SubResource("CapsuleShape3D_jjqxs") shape = SubResource("CapsuleShape3D_jjqxs")
[node name="Camera" type="Camera3D" parent="."] [node name="Camera" type="Camera3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.5, 0) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.5, 0)
current = true
[node name="HUD" type="CanvasLayer" parent="."] [node name="HUD" type="CanvasLayer" parent="."]

View file

@ -3,6 +3,8 @@
[node name="Test Room" type="Node3D"] [node name="Test Room" type="Node3D"]
[node name="CSGCombiner3D" type="CSGCombiner3D" parent="."] [node name="CSGCombiner3D" type="CSGCombiner3D" parent="."]
use_collision = true
collision_mask = 2
[node name="CSGBox3D" type="CSGBox3D" parent="CSGCombiner3D"] [node name="CSGBox3D" type="CSGBox3D" parent="CSGCombiner3D"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.165546, -1.07088, 0.522302) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -0.165546, -1.07088, 0.522302)

View file

@ -1,12 +1,27 @@
extends RigidBody3D extends CharacterBody3D
@export var speed = 100.0
@export var fall_acceleration = 75.0
var stack: CommandStack = CommandStack.new() var stack: CommandStack = CommandStack.new()
@onready var weapon_player: AnimationPlayer = $"HUD/Weapon/AnimationPlayer"
# Called when the node enters the scene tree for the first time. # Called when the node enters the scene tree for the first time.
func _ready() -> void: func _ready() -> void:
pass # Replace with function body. weapon_player.current_animation = "static"
# Called every frame. 'delta' is the elapsed time since the previous frame. # Called every frame. 'delta' is the elapsed time since the previous frame.
func _process(delta: float) -> void: func _physics_process(delta: float) -> void:
pass var direction = Vector3.ZERO
direction.z = Input.get_axis("move_forward", "move_backward")
direction.x = Input.get_axis("move_left", "move_right")
var target_velocity = direction * speed * delta
if not is_on_floor():
target_velocity.y -= fall_acceleration * delta
velocity = target_velocity
move_and_slide()

View file

@ -11,7 +11,7 @@ config_version=5
[application] [application]
config/name="Revenge of the Red Dragon Pon of the Red Dragon Pon of the Red Dragon Pon" config/name="Revenge of the Red Dragon Pon of the Red Dragon Pon of the Red Dragon Pon"
run/main_scene="uid://bxf4x8hp870i6" run/main_scene="uid://d23028pr0jahr"
config/features=PackedStringArray("4.4", "Forward Plus") config/features=PackedStringArray("4.4", "Forward Plus")
config/icon="res://icon.svg" config/icon="res://icon.svg"
@ -19,6 +19,34 @@ config/icon="res://icon.svg"
project/assembly_name="Revenge of the Red Dragon Pon of the Red Dragon Pon of the Red Dragon Pon" project/assembly_name="Revenge of the Red Dragon Pon of the Red Dragon Pon of the Red Dragon Pon"
[input]
move_forward={
"deadzone": 0.2,
"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":87,"key_label":0,"unicode":119,"location":0,"echo":false,"script":null)
]
}
move_backward={
"deadzone": 0.2,
"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":83,"key_label":0,"unicode":115,"location":0,"echo":false,"script":null)
]
}
move_left={
"deadzone": 0.2,
"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":65,"key_label":0,"unicode":97,"location":0,"echo":false,"script":null)
]
}
move_right={
"deadzone": 0.2,
"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":68,"key_label":0,"unicode":100,"location":0,"echo":false,"script":null)
]
}
[layer_names]
3d_physics/layer_1="Static Environment"
3d_physics/layer_2="Entities"
[rendering] [rendering]
textures/canvas_textures/default_texture_filter=0 textures/canvas_textures/default_texture_filter=0