Seems to mostly work

This commit is contained in:
derek
2024-10-02 15:39:40 -05:00
parent 3121e9d4d2
commit 70a6a23604
10 changed files with 24 additions and 19 deletions

View File

@@ -403,7 +403,6 @@ _data = {
[node name="mac10" node_paths=PackedStringArray("flare_light", "anim_player", "barrel_raycast", "casing_ejector", "mag_ejector", "audio_fire", "audio_empty", "audio_reload") instance=ExtResource("1_nb4p5")] [node name="mac10" node_paths=PackedStringArray("flare_light", "anim_player", "barrel_raycast", "casing_ejector", "mag_ejector", "audio_fire", "audio_empty", "audio_reload") instance=ExtResource("1_nb4p5")]
script = ExtResource("2_6i1l4") script = ExtResource("2_6i1l4")
gun_name = "Mac 10" gun_name = "Mac 10"
recoil_amount = 1.1
max_ammo = 30 max_ammo = 30
bullet_damage = 2 bullet_damage = 2
bullet_drop = 0.01 bullet_drop = 0.01

View File

@@ -154,8 +154,8 @@ points = PackedVector3Array(-0.860472, 0.302737, 0.0809691, -0.860472, 0.302737,
radius = 1.26183 radius = 1.26183
[node name="pistol1_pickup" type="RigidBody3D" node_paths=PackedStringArray("collision_shape") groups=["pickup"]] [node name="pistol1_pickup" type="RigidBody3D" node_paths=PackedStringArray("collision_shape") groups=["pickup"]]
collision_layer = 4 collision_layer = 17
collision_mask = 6 collision_mask = 17
script = ExtResource("1_pw3bx") script = ExtResource("1_pw3bx")
gun_resource = ExtResource("2_x7kb7") gun_resource = ExtResource("2_x7kb7")
collision_shape = NodePath("CollisionShape3D") collision_shape = NodePath("CollisionShape3D")

View File

@@ -433,7 +433,7 @@ script = ExtResource("2_7rsti")
gun_name = "Ye Ol' Revolver" gun_name = "Ye Ol' Revolver"
fire_mode = 1 fire_mode = 1
fov_zoom_amt = 0.96 fov_zoom_amt = 0.96
recoil_amount = 2.0 recoil_amount = Vector3(0.5, 0.1, 0.1)
max_ammo = 6 max_ammo = 6
bullet_damage = 5 bullet_damage = 5
bullet_force_mod = 10 bullet_force_mod = 10

View File

@@ -11,7 +11,7 @@ config_version=5
[application] [application]
config/name="First Person Test" config/name="First Person Test"
run/main_scene="res://scenes/test_level_2v2NOENEMIES.tscn" run/main_scene="res://scenes/test_level_2v2.tscn"
config/features=PackedStringArray("4.3", "Forward Plus") config/features=PackedStringArray("4.3", "Forward Plus")
config/icon="res://icon.svg" config/icon="res://icon.svg"

View File

@@ -1162,7 +1162,6 @@ _data = {
[node name="Test Level 2" type="Node3D" node_paths=PackedStringArray("player")] [node name="Test Level 2" type="Node3D" node_paths=PackedStringArray("player")]
script = ExtResource("1_orhgl") script = ExtResource("1_orhgl")
player = NodePath("Player") player = NodePath("Player")
money = 10
start_health = 10 start_health = 10
gun_1 = ExtResource("2_6rjit") gun_1 = ExtResource("2_6rjit")
gun_2 = ExtResource("3_umpon") gun_2 = ExtResource("3_umpon")

View File

@@ -1,4 +1,4 @@
[gd_scene load_steps=120 format=4 uid="uid://bicj5x7nc8tby"] [gd_scene load_steps=121 format=4 uid="uid://bicj5x7nc8tby"]
[ext_resource type="Script" path="res://scripts/LevelManager.gd" id="1_wls0y"] [ext_resource type="Script" path="res://scripts/LevelManager.gd" id="1_wls0y"]
[ext_resource type="PackedScene" uid="uid://brl0bsqjl5dg3" path="res://assets/mac_10.tscn" id="2_8r4nh"] [ext_resource type="PackedScene" uid="uid://brl0bsqjl5dg3" path="res://assets/mac_10.tscn" id="2_8r4nh"]
@@ -40,6 +40,7 @@
[ext_resource type="PackedScene" uid="uid://b3t8fra7evqfb" path="res://assets/Models/building_1.tscn" id="38_8r1eg"] [ext_resource type="PackedScene" uid="uid://b3t8fra7evqfb" path="res://assets/Models/building_1.tscn" id="38_8r1eg"]
[ext_resource type="PackedScene" uid="uid://dvlpc0mrx16l" path="res://assets/table1.tscn" id="39_wl4fl"] [ext_resource type="PackedScene" uid="uid://dvlpc0mrx16l" path="res://assets/table1.tscn" id="39_wl4fl"]
[ext_resource type="PackedScene" uid="uid://dfi7s3q1x2m3p" path="res://assets/low_poly_car.tscn" id="40_sk0vd"] [ext_resource type="PackedScene" uid="uid://dfi7s3q1x2m3p" path="res://assets/low_poly_car.tscn" id="40_sk0vd"]
[ext_resource type="PackedScene" uid="uid://dws4iro7820fc" path="res://assets/pistol1_pickup.tscn" id="41_2676c"]
[sub_resource type="ProceduralSkyMaterial" id="ProceduralSkyMaterial_nb6x7"] [sub_resource type="ProceduralSkyMaterial" id="ProceduralSkyMaterial_nb6x7"]
sky_top_color = Color(0.500562, 0.697334, 0.809889, 1) sky_top_color = Color(0.500562, 0.697334, 0.809889, 1)
@@ -1619,3 +1620,6 @@ transform = Transform3D(0.0894707, 0, -1.998, 0, 2, 0, 1.998, 0, 0.0894707, -47.
[node name="lowPolyCar5" parent="." instance=ExtResource("40_sk0vd")] [node name="lowPolyCar5" parent="." instance=ExtResource("40_sk0vd")]
transform = Transform3D(0.0894707, 0, -1.998, 0, 2, 0, 1.998, 0, 0.0894707, -14.2098, -0.222173, 16.1242) transform = Transform3D(0.0894707, 0, -1.998, 0, 2, 0, 1.998, 0, 0.0894707, -14.2098, -0.222173, 16.1242)
[node name="pistol1_pickup" parent="." instance=ExtResource("41_2676c")]
transform = Transform3D(0.713947, 0.700199, 0, -0.700199, 0.713947, 0, 0, 0, 1, -4.69771, 43.8716, 28.3908)

View File

@@ -5,7 +5,7 @@ extends Node3D
@export var gun_name : String @export var gun_name : String
@export_enum("Auto", "Single", "Burst") var fire_mode: int @export_enum("Auto", "Single", "Burst") var fire_mode: int
@export var fov_zoom_amt = .98 @export var fov_zoom_amt = .98
@export var recoil_amount = .2 @export var recoil_amount : Vector3 = Vector3(.2,.05,.05)
@export var max_ammo = 15 @export var max_ammo = 15
@export var start_mags = 3 @export var start_mags = 3
@export var bullet_damage = 1 @export var bullet_damage = 1
@@ -111,7 +111,7 @@ func shoot(delta):
instance_casing.position = casing_ejector.global_position instance_casing.position = casing_ejector.global_position
instance_casing.transform.basis = casing_ejector.global_transform.basis instance_casing.transform.basis = casing_ejector.global_transform.basis
get_tree().get_root().add_child(instance_casing) get_tree().get_root().add_child(instance_casing)
player.recoil.add_recoil() player.recoil.add_recoil(recoil_amount)
if fire_mode != 0: if fire_mode != 0:
cycle_count -= 1 cycle_count -= 1

View File

@@ -1,7 +1,7 @@
extends Node3D extends Node3D
var recoil_amount : Vector3 = Vector3(.1,0,0) var recoil_amount : Vector3 = Vector3(.1,0,0)
var snap_amount : float = 8 var snap_amount : float = 10
var speed : float = 4 var speed : float = 4
var current_rotation : Vector3 var current_rotation : Vector3
var target_rotation : Vector3 var target_rotation : Vector3
@@ -17,6 +17,9 @@ func _process(delta: float) -> void:
current_rotation = lerp(current_rotation, target_rotation, snap_amount * delta) current_rotation = lerp(current_rotation, target_rotation, snap_amount * delta)
basis = Quaternion.from_euler(current_rotation) basis = Quaternion.from_euler(current_rotation)
func add_recoil() -> void: func add_recoil(recoil_amount) -> void:
print("ADD RECOIL") var recoil_x = recoil_amount.x
target_rotation += Vector3(.1,0,0) var recoil_y = randf_range(-recoil_amount.y,recoil_amount.y)
var recoil_z = randf_range(-recoil_amount.z,recoil_amount.z)
target_rotation += Vector3(recoil_x, recoil_y, recoil_z)

View File

@@ -10,7 +10,7 @@ var cycle_count
@export var gun_name : String @export var gun_name : String
@export_enum("Auto", "Single", "Burst") var fire_mode: int @export_enum("Auto", "Single", "Burst") var fire_mode: int
@export var fov_zoom_amt = .98 @export var fov_zoom_amt = .98
@export var recoil_amount = .2 @export var recoil_amount : Vector3 = Vector3(1,.1,.1)
@export var max_ammo = 15 @export var max_ammo = 15
@export var start_mags = 3 @export var start_mags = 3
@export var bullet_damage = 1 @export var bullet_damage = 1
@@ -54,8 +54,8 @@ var cycle_count
@export var audio_empty : Node @export var audio_empty : Node
@export var audio_reload : Node @export var audio_reload : Node
@onready var player = $"../../../../" @onready var player = get_tree().current_scene.player
@onready var level_control = $"../../../../../" @onready var level_control = get_tree().current_scene
@onready var ammo_current @onready var ammo_current
var casing_array = [] var casing_array = []
@@ -155,7 +155,7 @@ func fire(delta):
instance_bullet.player_position = player.global_position instance_bullet.player_position = player.global_position
instance_bullet.instance_bullethole = bullethole.instantiate() instance_bullet.instance_bullethole = bullethole.instantiate()
get_tree().get_root().add_child(instance_bullet) get_tree().get_root().add_child(instance_bullet)
player.weapon_recoil(delta) player.recoil.add_recoil(recoil_amount)
chamber.rotate_object_local(Vector3(0,-1,0),deg_to_rad(60)) chamber.rotate_object_local(Vector3(0,-1,0),deg_to_rad(60))
func reload(delta): func reload(delta):

View File

@@ -10,7 +10,7 @@ var cycle_count
@export var gun_name : String @export var gun_name : String
@export_enum("Auto", "Single", "Burst") var fire_mode: int @export_enum("Auto", "Single", "Burst") var fire_mode: int
@export var fov_zoom_amt = .98 @export var fov_zoom_amt = .98
@export var recoil_amount = .2 @export var recoil_amount : Vector3 = Vector3(.2,0,0)
@export var max_ammo = 15 @export var max_ammo = 15
@export var start_mags = 3 @export var start_mags = 3
@export var bullet_damage = 1 @export var bullet_damage = 1
@@ -100,7 +100,7 @@ func shoot(delta):
instance_bullet.blast_power = blast_power instance_bullet.blast_power = blast_power
instance_bullet.player_position = player.global_position instance_bullet.player_position = player.global_position
get_tree().get_root().add_child(instance_bullet) get_tree().get_root().add_child(instance_bullet)
player.recoil.add_recoil() player.recoil.add_recoil(recoil_amount)
if fire_mode != 0: if fire_mode != 0:
cycle_count -= 1 cycle_count -= 1