revolver rigged and animated. script needs rewrite

This commit is contained in:
Derek
2024-07-15 21:06:47 -05:00
parent af7b6afa3d
commit ccf68ed788
8 changed files with 394 additions and 12 deletions

Binary file not shown.

Binary file not shown.

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.1 KiB

View File

@@ -0,0 +1,35 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://l6vsalcx12qr"
path.s3tc="res://.godot/imported/revolver1.normal.png-757c1f2d12a4b4746701468dfdfe2da6.s3tc.ctex"
metadata={
"imported_formats": ["s3tc_bptc"],
"vram_texture": true
}
[deps]
source_file="res://assets/Models/textures/revolver1.normal.png"
dest_files=["res://.godot/imported/revolver1.normal.png-757c1f2d12a4b4746701468dfdfe2da6.s3tc.ctex"]
[params]
compress/mode=2
compress/high_quality=false
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=1
compress/channel_pack=0
mipmaps/generate=true
mipmaps/limit=-1
roughness/mode=1
roughness/src_normal="res://assets/Models/textures/revolver1.normal.png"
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=0

View File

@@ -411,7 +411,7 @@ audio_empty = NodePath("Audio/Empty")
audio_reload = NodePath("Audio/Reload")
[node name="mac10" parent="." index="0"]
transform = Transform3D(-1.92883e-06, 0, -0.532829, 0, 0.532828, 0, 0.532828, 0, -1.92884e-06, 0, 0, 0)
transform = Transform3D(-1.94727e-06, 3.27023e-09, -0.532829, 0.0740471, 0.527658, -2.67375e-07, 0.527658, -0.0740471, -1.92884e-06, 0, -0.0867323, -0.120086)
[node name="SpotLight3D" type="SpotLight3D" parent="mac10" index="0"]
transform = Transform3D(-6.79394e-06, 0, 1.87678, 0, 1.87678, 0, -1.87677, 0, -6.79392e-06, -1.63231, 0, 5.90892e-06)

View File

@@ -1,14 +1,360 @@
[gd_scene load_steps=2 format=3 uid="uid://bmwch3mi8ow0m"]
[gd_scene load_steps=17 format=3 uid="uid://b5eclfg0cmmal"]
[ext_resource type="PackedScene" uid="uid://dgogd08c0ubt6" path="res://assets/Models/revolver1.blend" id="1_i5f84"]
[ext_resource type="Script" path="res://scripts/gun.gd" id="2_qau3f"]
[ext_resource type="PackedScene" uid="uid://dqhltdnqyg8ni" path="res://assets/bullet.tscn" id="3_pw8cx"]
[ext_resource type="Texture2D" uid="uid://dtg3nb2ew72c3" path="res://assets/star_05.png" id="3_q41fl"]
[ext_resource type="PackedScene" uid="uid://crvohhc6kgshn" path="res://assets/bullet_hole.tscn" id="4_qlvy5"]
[ext_resource type="PackedScene" uid="uid://c1gdehrsytlkk" path="res://assets/casing_2.tscn" id="5_8krt1"]
[ext_resource type="PackedScene" uid="uid://cp8563f0oxvff" path="res://assets/mag1.tscn" id="6_w1scw"]
[ext_resource type="AudioStream" uid="uid://ba0w04uqqexpn" path="res://assets/Audio/Weapons/machine-gun-m16-double-shot-close-perspective-SBA-300130711.wav" id="8_thfjw"]
[ext_resource type="AudioStream" uid="uid://t50i483xmj3a" path="res://assets/Audio/Weapons/toy-click-spin-SBA-300071143.wav" id="9_xt6tc"]
[ext_resource type="AudioStream" uid="uid://db3iy0f1pa5lg" path="res://assets/Audio/Weapons/gun-m-16-reload-full-clip-magazine-SBA-300121257.wav" id="10_0uh43"]
[node name="revolver1" instance=ExtResource("1_i5f84")]
[sub_resource type="Animation" id="Animation_n8vac"]
resource_name = "shoot"
length = 0.3
step = 0.01
tracks/0/type = "value"
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/path = NodePath("revolver1:position")
tracks/0/interp = 2
tracks/0/loop_wrap = true
tracks/0/keys = {
"times": PackedFloat32Array(0.03, 0.07, 0.3),
"transitions": PackedFloat32Array(1, 1, 1),
"update": 0,
"values": [Vector3(0, 0, -0.073), Vector3(0, 0.267, 0.691), Vector3(0, 0, -0.073)]
}
tracks/1/type = "value"
tracks/1/imported = false
tracks/1/enabled = true
tracks/1/path = NodePath("revolver1:rotation")
tracks/1/interp = 2
tracks/1/loop_wrap = true
tracks/1/keys = {
"times": PackedFloat32Array(0.03, 0.07, 0.3),
"transitions": PackedFloat32Array(1, 1, 1),
"update": 0,
"values": [Vector3(0, 0, -1.5708), Vector3(0.684867, 0, -1.5708), Vector3(0, 0, -1.5708)]
}
tracks/2/type = "value"
tracks/2/imported = false
tracks/2/enabled = true
tracks/2/path = NodePath("revolver1/hammer:rotation")
tracks/2/interp = 2
tracks/2/loop_wrap = true
tracks/2/keys = {
"times": PackedFloat32Array(0, 0.02, 0.03),
"transitions": PackedFloat32Array(1, 1, 1),
"update": 0,
"values": [Vector3(0, 0, 0), Vector3(-2.69072e-08, 0.663103, -9.26305e-09), Vector3(0, 0, 0)]
}
tracks/3/type = "value"
tracks/3/imported = false
tracks/3/enabled = true
tracks/3/path = NodePath("revolver1/Trigger:rotation")
tracks/3/interp = 2
tracks/3/loop_wrap = true
tracks/3/keys = {
"times": PackedFloat32Array(0, 0.01, 0.08),
"transitions": PackedFloat32Array(1, 1, 1),
"update": 0,
"values": [Vector3(1.5708, -1.36174, 0), Vector3(1.5708, -2.10732, 0), Vector3(1.5708, -1.36174, 0)]
}
[sub_resource type="Animation" id="Animation_rlxei"]
resource_name = "reload"
length = 2.0
step = 0.01
tracks/0/type = "value"
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/path = NodePath("revolver1:position")
tracks/0/interp = 2
tracks/0/loop_wrap = true
tracks/0/keys = {
"times": PackedFloat32Array(0, 0.22, 0.4, 0.6, 1.07, 1.19, 1.33, 1.53, 2),
"transitions": PackedFloat32Array(1, 1, 1, 1, 1, 1, 1, 1, 1),
"update": 0,
"values": [Vector3(0, 0, -0.073), Vector3(-1.03159, 1.43363, -0.174336), Vector3(-1.03159, 0.984345, -0.174336), Vector3(-1.27312, 1.15341, -0.515495), Vector3(-1.59408, -1.56264, -1.03166), Vector3(-1.59408, -1.08079, -1.03166), Vector3(-1.83283, -1.08079, -0.978696), Vector3(-0.0628345, 0.524388, -0.936215), Vector3(0, 0, -0.073)]
}
tracks/1/type = "value"
tracks/1/imported = false
tracks/1/enabled = true
tracks/1/path = NodePath("revolver1:rotation")
tracks/1/interp = 2
tracks/1/loop_wrap = true
tracks/1/keys = {
"times": PackedFloat32Array(0, 0.22, 0.4, 0.6, 1.07, 1.19, 1.33, 1.53, 2),
"transitions": PackedFloat32Array(1, 1, 1, 1, 1, 1, 1, 1, 1),
"update": 0,
"values": [Vector3(0, 0, -1.5708), Vector3(0.687548, 0.326954, -0.642657), Vector3(1.01821, 0.680476, -0.426182), Vector3(0.903525, 0.852835, -0.569306), Vector3(-0.971497, 0.385542, -1.86723), Vector3(-1.00985, 0.7163, -1.79185), Vector3(-1.31235, 0.122981, -1.46474), Vector3(-0.0980584, 0.11705, -2.01685), Vector3(0, 0, -1.5708)]
}
tracks/2/type = "value"
tracks/2/imported = false
tracks/2/enabled = true
tracks/2/path = NodePath("revolver1/Chamber:position")
tracks/2/interp = 1
tracks/2/loop_wrap = true
tracks/2/keys = {
"times": PackedFloat32Array(0.14, 0.26, 1.37, 1.53),
"transitions": PackedFloat32Array(1, 1, 1, 1),
"update": 0,
"values": [Vector3(-0.0143475, 0, -0.0849619), Vector3(-0.014, -0.3, -0.085), Vector3(-0.014, -0.3, -0.085), Vector3(-0.0143475, 0, -0.0849619)]
}
tracks/3/type = "value"
tracks/3/imported = false
tracks/3/enabled = true
tracks/3/path = NodePath("revolver1/Chamber/casing_001:visible")
tracks/3/interp = 1
tracks/3/loop_wrap = true
tracks/3/keys = {
"times": PackedFloat32Array(0.3, 0.31, 1.29, 1.3),
"transitions": PackedFloat32Array(1, 1, 1, 1),
"update": 1,
"values": [true, false, false, true]
}
tracks/4/type = "value"
tracks/4/imported = false
tracks/4/enabled = true
tracks/4/path = NodePath("revolver1/Chamber/casing_002:visible")
tracks/4/interp = 1
tracks/4/loop_wrap = true
tracks/4/keys = {
"times": PackedFloat32Array(0.3, 0.31, 1.29, 1.3),
"transitions": PackedFloat32Array(1, 1, 1, 1),
"update": 1,
"values": [true, false, false, true]
}
tracks/5/type = "value"
tracks/5/imported = false
tracks/5/enabled = true
tracks/5/path = NodePath("revolver1/Chamber/casing_003:visible")
tracks/5/interp = 1
tracks/5/loop_wrap = true
tracks/5/keys = {
"times": PackedFloat32Array(0.3, 0.31, 1.29, 1.3),
"transitions": PackedFloat32Array(1, 1, 1, 1),
"update": 1,
"values": [true, false, false, true]
}
tracks/6/type = "value"
tracks/6/imported = false
tracks/6/enabled = true
tracks/6/path = NodePath("revolver1/Chamber/casing_004:visible")
tracks/6/interp = 1
tracks/6/loop_wrap = true
tracks/6/keys = {
"times": PackedFloat32Array(0.3, 0.31, 1.29, 1.3),
"transitions": PackedFloat32Array(1, 1, 1, 1),
"update": 1,
"values": [true, false, false, true]
}
tracks/7/type = "value"
tracks/7/imported = false
tracks/7/enabled = true
tracks/7/path = NodePath("revolver1/Chamber/casing_005:visible")
tracks/7/interp = 1
tracks/7/loop_wrap = true
tracks/7/keys = {
"times": PackedFloat32Array(0.3, 0.31, 1.29, 1.3),
"transitions": PackedFloat32Array(1, 1, 1, 1),
"update": 1,
"values": [true, false, false, true]
}
tracks/8/type = "value"
tracks/8/imported = false
tracks/8/enabled = true
tracks/8/path = NodePath("revolver1/Chamber/casing:visible")
tracks/8/interp = 1
tracks/8/loop_wrap = true
tracks/8/keys = {
"times": PackedFloat32Array(0.3, 0.31, 1.29, 1.3),
"transitions": PackedFloat32Array(1, 1, 1, 1),
"update": 1,
"values": [true, false, false, true]
}
tracks/9/type = "method"
tracks/9/imported = false
tracks/9/enabled = true
tracks/9/path = NodePath(".")
tracks/9/interp = 1
tracks/9/loop_wrap = true
tracks/9/keys = {
"times": PackedFloat32Array(0.31, 2),
"transitions": PackedFloat32Array(1, 1),
"values": [{
"args": [],
"method": &"spawn_mag"
}, {
"args": [],
"method": &"reload_finished"
}]
}
[sub_resource type="Animation" id="Animation_nvmxj"]
resource_name = "swap_out"
step = 0.01
tracks/0/type = "value"
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/path = NodePath("revolver1:position")
tracks/0/interp = 2
tracks/0/loop_wrap = true
tracks/0/keys = {
"times": PackedFloat32Array(0, 0.2, 1),
"transitions": PackedFloat32Array(1, 1, 1),
"update": 0,
"values": [Vector3(0, 0.7136, -0.073321), Vector3(-0.8, 0.7136, 0.726679), Vector3(1, 0.7136, 3.92668)]
}
tracks/1/type = "value"
tracks/1/imported = false
tracks/1/enabled = true
tracks/1/path = NodePath("revolver1:rotation")
tracks/1/interp = 2
tracks/1/loop_wrap = true
tracks/1/keys = {
"times": PackedFloat32Array(0, 0.2, 1),
"transitions": PackedFloat32Array(1, 1, 1),
"update": 0,
"values": [Vector3(0, 0, -1.5708), Vector3(-0.797866, -0.0580611, -1.02596), Vector3(1.28498, 1.63115, -0.624855)]
}
[sub_resource type="Animation" id="Animation_w02ee"]
resource_name = "swap_in"
step = 0.01
tracks/0/type = "value"
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/path = NodePath("revolver1:position")
tracks/0/interp = 2
tracks/0/loop_wrap = true
tracks/0/keys = {
"times": PackedFloat32Array(0, 0.6, 1),
"transitions": PackedFloat32Array(1, 1, 1),
"update": 0,
"values": [Vector3(-3.07392, -1.84477, 0.367733), Vector3(-0.208626, 0.7136, -0.157707), Vector3(0, 0, -0.073)]
}
tracks/1/type = "value"
tracks/1/imported = false
tracks/1/enabled = true
tracks/1/path = NodePath("revolver1:rotation")
tracks/1/interp = 2
tracks/1/loop_wrap = true
tracks/1/keys = {
"times": PackedFloat32Array(0, 0.6, 1),
"transitions": PackedFloat32Array(1, 1, 1),
"update": 0,
"values": [Vector3(-0.988971, 2.72615, -2.59346), Vector3(-0.187002, 0.326746, -1.63372), Vector3(0, 0, -1.5708)]
}
[sub_resource type="Animation" id="Animation_8akx8"]
resource_name = "empty"
length = 0.3
step = 0.01
tracks/0/type = "value"
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/path = NodePath("revolver1:position")
tracks/0/interp = 2
tracks/0/loop_wrap = true
tracks/0/keys = {
"times": PackedFloat32Array(0, 0.1, 0.3),
"transitions": PackedFloat32Array(1, 1, 1),
"update": 0,
"values": [Vector3(0, 0, -0.073), Vector3(-0.127398, 0.74797, -0.594604), Vector3(0, 0, -0.073)]
}
tracks/1/type = "value"
tracks/1/imported = false
tracks/1/enabled = true
tracks/1/path = NodePath("revolver1:rotation")
tracks/1/interp = 2
tracks/1/loop_wrap = true
tracks/1/keys = {
"times": PackedFloat32Array(0, 0.1, 0.3),
"transitions": PackedFloat32Array(1, 1, 1),
"update": 0,
"values": [Vector3(0, 0, -1.5708), Vector3(-0.150383, 0.0739494, -1.60578), Vector3(0, 0, -1.5708)]
}
[sub_resource type="AnimationLibrary" id="AnimationLibrary_2kb78"]
_data = {
"empty": SubResource("Animation_8akx8"),
"reload": SubResource("Animation_rlxei"),
"shoot": SubResource("Animation_n8vac"),
"swap_in": SubResource("Animation_w02ee"),
"swap_out": SubResource("Animation_nvmxj")
}
[node name="revolver1" node_paths=PackedStringArray("flare_light", "anim_player", "barrel_raycast", "casing_ejector", "mag_ejector", "audio_fire", "audio_empty", "audio_reload") instance=ExtResource("1_i5f84")]
script = ExtResource("2_qau3f")
gun_name = "Ye Ol' Revolver"
fire_mode = 1
recoil_amount = 0.4
max_ammo = 6
flare_light = NodePath("revolver1/SpotLight3D")
bullet = ExtResource("3_pw8cx")
bullethole = ExtResource("4_qlvy5")
casing = ExtResource("5_8krt1")
mag = ExtResource("6_w1scw")
anim_player = NodePath("AnimationPlayer")
barrel_raycast = NodePath("revolver1/RayCastBarrel")
casing_ejector = NodePath("revolver1/RayCastCasing")
mag_ejector = NodePath("revolver1/Chamber/RayCastMag")
audio_fire = NodePath("Audio/Fire")
audio_empty = NodePath("Audio/Empty")
audio_reload = NodePath("Audio/Reload")
[node name="revolver1" parent="." index="0"]
transform = Transform3D(-2.18557e-08, 0.5, 0, -0.5, -2.18557e-08, 0, 0, 0, 0.5, 0, 0.206226, -0.277466)
transform = Transform3D(-2.18557e-08, 0.5, 0, -0.5, -2.18557e-08, 0, 0, 0, 0.5, 0, 0, -0.073)
[node name="Chamber" parent="revolver1" index="0"]
transform = Transform3D(1.19209e-07, -1.19209e-07, 1, 1, 0, -1.19209e-07, 0, 1, 1.19209e-07, -0.0143475, 0, -0.0849619)
[node name="casing" parent="revolver1/Chamber" index="6"]
transform = Transform3D(-0.611184, 1.18824e-07, 0.791489, -9.55509e-08, -1, 7.63428e-08, 0.791489, -2.89681e-08, 0.611184, -0.110813, 0.140209, -0.066206)
[node name="hammer" parent="revolver1" index="1"]
transform = Transform3D(1, 3.55271e-15, 0, -3.55271e-15, 1, 0, 0, 0, 1, -0.0180137, 8.88178e-16, 0.241647)
[node name="RayCastMag" type="RayCast3D" parent="revolver1/Chamber" index="12"]
transform = Transform3D(2.50614e-07, -9.1894e-08, 2.10229, -2.50614e-07, -2.10229, -9.18941e-08, 2.1023, -2.50612e-07, -2.50613e-07, 1.71035e-09, 0.0849619, 0.0143475)
[node name="Trigger" parent="revolver1" index="2"]
transform = Transform3D(0.207541, -0.978226, 4.27596e-08, 0, -4.37114e-08, -1, 0.978226, 0.207541, -9.07191e-09, 0.226752, 0, -0.00209358)
[node name="RayCastBarrel" type="RayCast3D" parent="revolver1" index="3"]
transform = Transform3D(1.87678, -5.68434e-14, 0, 5.68434e-14, 1.87677, 0, 0, 0, 1.87678, -0.142459, 0.000826949, -1.92175)
target_position = Vector3(0, 0, -0.1)
[node name="RayCastCasing" type="RayCast3D" parent="revolver1" index="4"]
transform = Transform3D(-0.567942, -1.78878, -0.000464554, 1.72827, -0.548604, -0.484154, 0.461317, -0.14694, 1.81326, -0.456331, 0.38, -0.136698)
target_position = Vector3(1, 0, 0)
[node name="SpotLight3D" type="SpotLight3D" parent="revolver1" index="5"]
transform = Transform3D(-4.37114e-08, -1, 0, 1, -4.37115e-08, 0, 0, 0, 1, 0, 0, -1.94881)
light_color = Color(0.965385, 0.844179, 0.572893, 1)
light_energy = 0.0
light_projector = ExtResource("3_q41fl")
light_size = 0.229
shadow_enabled = true
spot_range = 7.0
spot_angle = 70.0
spot_angle_attenuation = 0.353554
[node name="AnimationPlayer" type="AnimationPlayer" parent="." index="1"]
libraries = {
"": SubResource("AnimationLibrary_2kb78")
}
[node name="Audio" type="Node3D" parent="." index="2"]
[node name="Fire" type="AudioStreamPlayer3D" parent="Audio" index="0"]
stream = ExtResource("8_thfjw")
volume_db = 5.0
bus = &"SFX"
[node name="Empty" type="AudioStreamPlayer3D" parent="Audio" index="1"]
stream = ExtResource("9_xt6tc")
bus = &"SFX"
[node name="Reload" type="AudioStreamPlayer3D" parent="Audio" index="2"]
stream = ExtResource("10_0uh43")
volume_db = 3.0
bus = &"SFX"