Add a lot of assets, add player model somewhat
This commit is contained in:
parent
eb20849844
commit
1bb646b3c2
BIN
godot/RawAssets/McGuffin/Telly.blend
Normal file
BIN
godot/RawAssets/McGuffin/Telly.blend
Normal file
Binary file not shown.
BIN
godot/RawAssets/Soldier/Drone.blend
Normal file
BIN
godot/RawAssets/Soldier/Drone.blend
Normal file
Binary file not shown.
BIN
godot/RawAssets/Soldier/SniperRifle.blend
Normal file
BIN
godot/RawAssets/Soldier/SniperRifle.blend
Normal file
Binary file not shown.
BIN
godot/RawAssets/Soldier/SoldierF.blend
Normal file
BIN
godot/RawAssets/Soldier/SoldierF.blend
Normal file
Binary file not shown.
BIN
godot/RawAssets/Soldier/SoldierM.blend
Normal file
BIN
godot/RawAssets/Soldier/SoldierM.blend
Normal file
Binary file not shown.
BIN
godot/RawAssets/Soldier/SoldierM.blend1
Normal file
BIN
godot/RawAssets/Soldier/SoldierM.blend1
Normal file
Binary file not shown.
BIN
godot/RawAssets/Stardust/Stardust.blend
Normal file
BIN
godot/RawAssets/Stardust/Stardust.blend
Normal file
Binary file not shown.
BIN
godot/assets/Gear.png
Normal file
BIN
godot/assets/Gear.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 1.1 KiB |
41
godot/assets/Gear.png.import
Normal file
41
godot/assets/Gear.png.import
Normal file
@ -0,0 +1,41 @@
|
|||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="texture"
|
||||||
|
type="CompressedTexture2D"
|
||||||
|
uid="uid://c7epv5p0qau02"
|
||||||
|
path.s3tc="res://.godot/imported/Gear.png-4a33d7121b716ce6c6e8a5c001bd6bc4.s3tc.ctex"
|
||||||
|
metadata={
|
||||||
|
"imported_formats": ["s3tc_bptc"],
|
||||||
|
"vram_texture": true
|
||||||
|
}
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://assets/Gear.png"
|
||||||
|
dest_files=["res://.godot/imported/Gear.png-4a33d7121b716ce6c6e8a5c001bd6bc4.s3tc.ctex"]
|
||||||
|
|
||||||
|
[params]
|
||||||
|
|
||||||
|
compress/mode=2
|
||||||
|
compress/high_quality=false
|
||||||
|
compress/lossy_quality=0.7
|
||||||
|
compress/uastc_level=0
|
||||||
|
compress/rdo_quality_loss=0.0
|
||||||
|
compress/hdr_compression=1
|
||||||
|
compress/normal_map=0
|
||||||
|
compress/channel_pack=0
|
||||||
|
mipmaps/generate=true
|
||||||
|
mipmaps/limit=-1
|
||||||
|
roughness/mode=0
|
||||||
|
roughness/src_normal=""
|
||||||
|
process/channel_remap/red=0
|
||||||
|
process/channel_remap/green=1
|
||||||
|
process/channel_remap/blue=2
|
||||||
|
process/channel_remap/alpha=3
|
||||||
|
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
|
||||||
BIN
godot/assets/Hit.mp3
Normal file
BIN
godot/assets/Hit.mp3
Normal file
Binary file not shown.
19
godot/assets/Hit.mp3.import
Normal file
19
godot/assets/Hit.mp3.import
Normal file
@ -0,0 +1,19 @@
|
|||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="mp3"
|
||||||
|
type="AudioStreamMP3"
|
||||||
|
uid="uid://bfg31e3s4jv8c"
|
||||||
|
path="res://.godot/imported/Hit.mp3-1e43ad11df7f4d135dfebfbf61e21305.mp3str"
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://assets/Hit.mp3"
|
||||||
|
dest_files=["res://.godot/imported/Hit.mp3-1e43ad11df7f4d135dfebfbf61e21305.mp3str"]
|
||||||
|
|
||||||
|
[params]
|
||||||
|
|
||||||
|
loop=false
|
||||||
|
loop_offset=0
|
||||||
|
bpm=0
|
||||||
|
beat_count=0
|
||||||
|
bar_beats=4
|
||||||
BIN
godot/assets/LaserFast.mp3
Normal file
BIN
godot/assets/LaserFast.mp3
Normal file
Binary file not shown.
19
godot/assets/LaserFast.mp3.import
Normal file
19
godot/assets/LaserFast.mp3.import
Normal file
@ -0,0 +1,19 @@
|
|||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="mp3"
|
||||||
|
type="AudioStreamMP3"
|
||||||
|
uid="uid://dw5vleoexlhwx"
|
||||||
|
path="res://.godot/imported/LaserFast.mp3-7950076d801cb865e24808499aec09df.mp3str"
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://assets/LaserFast.mp3"
|
||||||
|
dest_files=["res://.godot/imported/LaserFast.mp3-7950076d801cb865e24808499aec09df.mp3str"]
|
||||||
|
|
||||||
|
[params]
|
||||||
|
|
||||||
|
loop=false
|
||||||
|
loop_offset=0
|
||||||
|
bpm=0
|
||||||
|
beat_count=0
|
||||||
|
bar_beats=4
|
||||||
BIN
godot/assets/LaserShot.ogg
Normal file
BIN
godot/assets/LaserShot.ogg
Normal file
Binary file not shown.
19
godot/assets/LaserShot.ogg.import
Normal file
19
godot/assets/LaserShot.ogg.import
Normal file
@ -0,0 +1,19 @@
|
|||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="oggvorbisstr"
|
||||||
|
type="AudioStreamOggVorbis"
|
||||||
|
uid="uid://dlsto2l7tudif"
|
||||||
|
path="res://.godot/imported/LaserShot.ogg-6aac68be79c568543c2853d102341790.oggvorbisstr"
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://assets/LaserShot.ogg"
|
||||||
|
dest_files=["res://.godot/imported/LaserShot.ogg-6aac68be79c568543c2853d102341790.oggvorbisstr"]
|
||||||
|
|
||||||
|
[params]
|
||||||
|
|
||||||
|
loop=false
|
||||||
|
loop_offset=0
|
||||||
|
bpm=0
|
||||||
|
beat_count=0
|
||||||
|
bar_beats=4
|
||||||
BIN
godot/assets/LaserWithRecovery.mp3
Normal file
BIN
godot/assets/LaserWithRecovery.mp3
Normal file
Binary file not shown.
19
godot/assets/LaserWithRecovery.mp3.import
Normal file
19
godot/assets/LaserWithRecovery.mp3.import
Normal file
@ -0,0 +1,19 @@
|
|||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="mp3"
|
||||||
|
type="AudioStreamMP3"
|
||||||
|
uid="uid://cqboecwvt1cp8"
|
||||||
|
path="res://.godot/imported/LaserWithRecovery.mp3-10fbe4c1e5d75ceb94f91b483f19f811.mp3str"
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://assets/LaserWithRecovery.mp3"
|
||||||
|
dest_files=["res://.godot/imported/LaserWithRecovery.mp3-10fbe4c1e5d75ceb94f91b483f19f811.mp3str"]
|
||||||
|
|
||||||
|
[params]
|
||||||
|
|
||||||
|
loop=false
|
||||||
|
loop_offset=0
|
||||||
|
bpm=0
|
||||||
|
beat_count=0
|
||||||
|
bar_beats=4
|
||||||
BIN
godot/assets/LaserWithRecoveryEdited.ogg
Normal file
BIN
godot/assets/LaserWithRecoveryEdited.ogg
Normal file
Binary file not shown.
19
godot/assets/LaserWithRecoveryEdited.ogg.import
Normal file
19
godot/assets/LaserWithRecoveryEdited.ogg.import
Normal file
@ -0,0 +1,19 @@
|
|||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="oggvorbisstr"
|
||||||
|
type="AudioStreamOggVorbis"
|
||||||
|
uid="uid://xxpkjhaovyd"
|
||||||
|
path="res://.godot/imported/LaserWithRecoveryEdited.ogg-7b52758d22998fcb799b2fc8da1b30b1.oggvorbisstr"
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://assets/LaserWithRecoveryEdited.ogg"
|
||||||
|
dest_files=["res://.godot/imported/LaserWithRecoveryEdited.ogg-7b52758d22998fcb799b2fc8da1b30b1.oggvorbisstr"]
|
||||||
|
|
||||||
|
[params]
|
||||||
|
|
||||||
|
loop=false
|
||||||
|
loop_offset=0
|
||||||
|
bpm=0
|
||||||
|
beat_count=0
|
||||||
|
bar_beats=4
|
||||||
BIN
godot/assets/Raygun.fbx
Normal file
BIN
godot/assets/Raygun.fbx
Normal file
Binary file not shown.
46
godot/assets/Raygun.fbx.import
Normal file
46
godot/assets/Raygun.fbx.import
Normal file
@ -0,0 +1,46 @@
|
|||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="scene"
|
||||||
|
importer_version=1
|
||||||
|
type="PackedScene"
|
||||||
|
uid="uid://ckl63r2rgqra7"
|
||||||
|
path="res://.godot/imported/Raygun.fbx-2973e1d298710d4aade91960a0085ed7.scn"
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://assets/Raygun.fbx"
|
||||||
|
dest_files=["res://.godot/imported/Raygun.fbx-2973e1d298710d4aade91960a0085ed7.scn"]
|
||||||
|
|
||||||
|
[params]
|
||||||
|
|
||||||
|
nodes/root_type=""
|
||||||
|
nodes/root_name=""
|
||||||
|
nodes/root_script=null
|
||||||
|
mesh_library/use_node_names_as_mesh_names=false
|
||||||
|
array_mesh/deduplicate_surfaces=true
|
||||||
|
nodes/apply_root_scale=true
|
||||||
|
nodes/root_scale=1.0
|
||||||
|
nodes/import_as_skeleton_bones=false
|
||||||
|
nodes/use_name_suffixes=true
|
||||||
|
nodes/use_node_type_suffixes=true
|
||||||
|
meshes/ensure_tangents=true
|
||||||
|
meshes/generate_lods=true
|
||||||
|
meshes/create_shadow_meshes=true
|
||||||
|
meshes/light_baking=1
|
||||||
|
meshes/lightmap_texel_size=0.2
|
||||||
|
meshes/force_disable_compression=false
|
||||||
|
skins/use_named_skins=true
|
||||||
|
animation/import=true
|
||||||
|
animation/fps=30
|
||||||
|
animation/trimming=true
|
||||||
|
animation/remove_immutable_tracks=true
|
||||||
|
animation/import_rest_as_RESET=false
|
||||||
|
import_script/path=""
|
||||||
|
materials/extract=0
|
||||||
|
materials/extract_format=0
|
||||||
|
materials/extract_path=""
|
||||||
|
_subresources={}
|
||||||
|
fbx/importer=0
|
||||||
|
fbx/allow_geometry_helper_nodes=false
|
||||||
|
fbx/embedded_image_handling=1
|
||||||
|
fbx/naming_version=2
|
||||||
BIN
godot/assets/Soldier.png
Normal file
BIN
godot/assets/Soldier.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 1.6 KiB |
40
godot/assets/Soldier.png.import
Normal file
40
godot/assets/Soldier.png.import
Normal file
@ -0,0 +1,40 @@
|
|||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="texture"
|
||||||
|
type="CompressedTexture2D"
|
||||||
|
uid="uid://cbvxh8xp8ilac"
|
||||||
|
path="res://.godot/imported/Soldier.png-df8ce7c3aef599e55e465baf8a8fb940.ctex"
|
||||||
|
metadata={
|
||||||
|
"vram_texture": false
|
||||||
|
}
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://assets/Soldier.png"
|
||||||
|
dest_files=["res://.godot/imported/Soldier.png-df8ce7c3aef599e55e465baf8a8fb940.ctex"]
|
||||||
|
|
||||||
|
[params]
|
||||||
|
|
||||||
|
compress/mode=0
|
||||||
|
compress/high_quality=false
|
||||||
|
compress/lossy_quality=0.7
|
||||||
|
compress/uastc_level=0
|
||||||
|
compress/rdo_quality_loss=0.0
|
||||||
|
compress/hdr_compression=1
|
||||||
|
compress/normal_map=0
|
||||||
|
compress/channel_pack=0
|
||||||
|
mipmaps/generate=true
|
||||||
|
mipmaps/limit=-1
|
||||||
|
roughness/mode=0
|
||||||
|
roughness/src_normal=""
|
||||||
|
process/channel_remap/red=0
|
||||||
|
process/channel_remap/green=1
|
||||||
|
process/channel_remap/blue=2
|
||||||
|
process/channel_remap/alpha=3
|
||||||
|
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
|
||||||
BIN
godot/assets/SoldierF.fbx
Normal file
BIN
godot/assets/SoldierF.fbx
Normal file
Binary file not shown.
46
godot/assets/SoldierF.fbx.import
Normal file
46
godot/assets/SoldierF.fbx.import
Normal file
@ -0,0 +1,46 @@
|
|||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="scene"
|
||||||
|
importer_version=1
|
||||||
|
type="PackedScene"
|
||||||
|
uid="uid://hoh8hhdo2epf"
|
||||||
|
path="res://.godot/imported/SoldierF.fbx-a9563c4d0e146b777cf04292b446b71b.scn"
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://assets/SoldierF.fbx"
|
||||||
|
dest_files=["res://.godot/imported/SoldierF.fbx-a9563c4d0e146b777cf04292b446b71b.scn"]
|
||||||
|
|
||||||
|
[params]
|
||||||
|
|
||||||
|
nodes/root_type=""
|
||||||
|
nodes/root_name=""
|
||||||
|
nodes/root_script=null
|
||||||
|
mesh_library/use_node_names_as_mesh_names=false
|
||||||
|
array_mesh/deduplicate_surfaces=true
|
||||||
|
nodes/apply_root_scale=true
|
||||||
|
nodes/root_scale=1.0
|
||||||
|
nodes/import_as_skeleton_bones=false
|
||||||
|
nodes/use_name_suffixes=true
|
||||||
|
nodes/use_node_type_suffixes=true
|
||||||
|
meshes/ensure_tangents=true
|
||||||
|
meshes/generate_lods=true
|
||||||
|
meshes/create_shadow_meshes=true
|
||||||
|
meshes/light_baking=1
|
||||||
|
meshes/lightmap_texel_size=0.2
|
||||||
|
meshes/force_disable_compression=false
|
||||||
|
skins/use_named_skins=true
|
||||||
|
animation/import=true
|
||||||
|
animation/fps=30
|
||||||
|
animation/trimming=true
|
||||||
|
animation/remove_immutable_tracks=true
|
||||||
|
animation/import_rest_as_RESET=false
|
||||||
|
import_script/path=""
|
||||||
|
materials/extract=0
|
||||||
|
materials/extract_format=0
|
||||||
|
materials/extract_path=""
|
||||||
|
_subresources={}
|
||||||
|
fbx/importer=0
|
||||||
|
fbx/allow_geometry_helper_nodes=false
|
||||||
|
fbx/embedded_image_handling=1
|
||||||
|
fbx/naming_version=2
|
||||||
BIN
godot/assets/SoldierM.fbx
Normal file
BIN
godot/assets/SoldierM.fbx
Normal file
Binary file not shown.
46
godot/assets/SoldierM.fbx.import
Normal file
46
godot/assets/SoldierM.fbx.import
Normal file
@ -0,0 +1,46 @@
|
|||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="scene"
|
||||||
|
importer_version=1
|
||||||
|
type="PackedScene"
|
||||||
|
uid="uid://dk6l25ooah3ap"
|
||||||
|
path="res://.godot/imported/SoldierM.fbx-337e6d55347223adba2f34b068add0bd.scn"
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://assets/SoldierM.fbx"
|
||||||
|
dest_files=["res://.godot/imported/SoldierM.fbx-337e6d55347223adba2f34b068add0bd.scn"]
|
||||||
|
|
||||||
|
[params]
|
||||||
|
|
||||||
|
nodes/root_type=""
|
||||||
|
nodes/root_name=""
|
||||||
|
nodes/root_script=null
|
||||||
|
mesh_library/use_node_names_as_mesh_names=false
|
||||||
|
array_mesh/deduplicate_surfaces=true
|
||||||
|
nodes/apply_root_scale=true
|
||||||
|
nodes/root_scale=1.0
|
||||||
|
nodes/import_as_skeleton_bones=false
|
||||||
|
nodes/use_name_suffixes=true
|
||||||
|
nodes/use_node_type_suffixes=true
|
||||||
|
meshes/ensure_tangents=true
|
||||||
|
meshes/generate_lods=true
|
||||||
|
meshes/create_shadow_meshes=true
|
||||||
|
meshes/light_baking=1
|
||||||
|
meshes/lightmap_texel_size=0.2
|
||||||
|
meshes/force_disable_compression=false
|
||||||
|
skins/use_named_skins=true
|
||||||
|
animation/import=true
|
||||||
|
animation/fps=30
|
||||||
|
animation/trimming=true
|
||||||
|
animation/remove_immutable_tracks=true
|
||||||
|
animation/import_rest_as_RESET=false
|
||||||
|
import_script/path=""
|
||||||
|
materials/extract=0
|
||||||
|
materials/extract_format=0
|
||||||
|
materials/extract_path=""
|
||||||
|
_subresources={}
|
||||||
|
fbx/importer=0
|
||||||
|
fbx/allow_geometry_helper_nodes=false
|
||||||
|
fbx/embedded_image_handling=1
|
||||||
|
fbx/naming_version=2
|
||||||
7
godot/mesh/materials/gear.tres
Normal file
7
godot/mesh/materials/gear.tres
Normal file
@ -0,0 +1,7 @@
|
|||||||
|
[gd_resource type="StandardMaterial3D" format=3 uid="uid://d3rjo75pb7dvx"]
|
||||||
|
|
||||||
|
[ext_resource type="Texture2D" uid="uid://c7epv5p0qau02" path="res://assets/Gear.png" id="1_qr2ym"]
|
||||||
|
|
||||||
|
[resource]
|
||||||
|
albedo_texture = ExtResource("1_qr2ym")
|
||||||
|
texture_filter = 0
|
||||||
7
godot/mesh/materials/soldier_material.tres
Normal file
7
godot/mesh/materials/soldier_material.tres
Normal file
@ -0,0 +1,7 @@
|
|||||||
|
[gd_resource type="StandardMaterial3D" format=3 uid="uid://ynnhfjaijwf2"]
|
||||||
|
|
||||||
|
[ext_resource type="Texture2D" uid="uid://cbvxh8xp8ilac" path="res://assets/Soldier.png" id="1_1r3w7"]
|
||||||
|
|
||||||
|
[resource]
|
||||||
|
albedo_texture = ExtResource("1_1r3w7")
|
||||||
|
texture_filter = 0
|
||||||
9
godot/mesh/raygun.tscn
Normal file
9
godot/mesh/raygun.tscn
Normal file
@ -0,0 +1,9 @@
|
|||||||
|
[gd_scene format=3 uid="uid://cg81784ct8gf5"]
|
||||||
|
|
||||||
|
[ext_resource type="PackedScene" uid="uid://ckl63r2rgqra7" path="res://assets/Raygun.fbx" id="1_njit6"]
|
||||||
|
[ext_resource type="Material" uid="uid://d3rjo75pb7dvx" path="res://mesh/materials/gear.tres" id="2_81k8r"]
|
||||||
|
|
||||||
|
[node name="Raygun" unique_id=1928455392 instance=ExtResource("1_njit6")]
|
||||||
|
|
||||||
|
[node name="Sniper_Rifle" parent="." index="0" unique_id=1373814885]
|
||||||
|
surface_material_override/0 = ExtResource("2_81k8r")
|
||||||
9
godot/mesh/soldier_f.tscn
Normal file
9
godot/mesh/soldier_f.tscn
Normal file
@ -0,0 +1,9 @@
|
|||||||
|
[gd_scene format=3 uid="uid://c5es36uh06m3s"]
|
||||||
|
|
||||||
|
[ext_resource type="PackedScene" uid="uid://hoh8hhdo2epf" path="res://assets/SoldierF.fbx" id="1_22b8v"]
|
||||||
|
[ext_resource type="Material" uid="uid://ynnhfjaijwf2" path="res://mesh/materials/soldier_material.tres" id="2_eabro"]
|
||||||
|
|
||||||
|
[node name="SoldierF" unique_id=686733085 instance=ExtResource("1_22b8v")]
|
||||||
|
|
||||||
|
[node name="Soldier_Female_Mesh" parent="Soldier_Female/Skeleton3D" parent_id_path=PackedInt32Array(210736176) index="0" unique_id=1355420912]
|
||||||
|
surface_material_override/0 = ExtResource("2_eabro")
|
||||||
33
godot/mesh/soldier_m.tscn
Normal file
33
godot/mesh/soldier_m.tscn
Normal file
@ -0,0 +1,33 @@
|
|||||||
|
[gd_scene format=3 uid="uid://ncxcmgdit2j1"]
|
||||||
|
|
||||||
|
[ext_resource type="PackedScene" uid="uid://dk6l25ooah3ap" path="res://assets/SoldierM.fbx" id="1_bn1bx"]
|
||||||
|
[ext_resource type="Texture2D" uid="uid://cbvxh8xp8ilac" path="res://assets/Soldier.png" id="2_n4j5p"]
|
||||||
|
|
||||||
|
[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_n4j5p"]
|
||||||
|
albedo_texture = ExtResource("2_n4j5p")
|
||||||
|
texture_filter = 0
|
||||||
|
|
||||||
|
[node name="SoldierM" unique_id=1868587353 instance=ExtResource("1_bn1bx")]
|
||||||
|
|
||||||
|
[node name="Male_IK_HAND_R" parent="Aim_Control" parent_id_path=PackedInt32Array(1488925479) index="1" unique_id=1011336848]
|
||||||
|
transform = Transform3D(0.005883459, -0.29583848, 0.4030446, -0.40563864, 0.23280492, 0.17680238, -0.29227144, -0.3290613, -0.23726773, 0.005743145, 1.1526048e-05, -0.001571659)
|
||||||
|
|
||||||
|
[node name="Skeleton3D" parent="Soldier" parent_id_path=PackedInt32Array(1731022909) index="0" unique_id=1317624294]
|
||||||
|
bones/2/rotation = Quaternion(0.95160115, 2.0944638e-08, 2.3653786e-08, -0.30733573)
|
||||||
|
bones/3/rotation = Quaternion(-0.35209325, 4.091232e-08, 1.5390487e-08, 0.93596494)
|
||||||
|
bones/4/rotation = Quaternion(0.7398268, -2.6881363e-08, 7.0005823e-09, 0.6727974)
|
||||||
|
bones/6/rotation = Quaternion(0.99905884, 1.7840092e-08, 1.8974825e-08, 0.043377537)
|
||||||
|
bones/7/rotation = Quaternion(-0.21973659, 4.264305e-08, 9.6049915e-09, 0.9755593)
|
||||||
|
bones/8/rotation = Quaternion(0.86758906, -7.8677225e-09, 3.0368508e-08, 0.49728197)
|
||||||
|
bones/10/rotation = Quaternion(-0.17222604, -0.13130432, 0.022178583, 0.9760151)
|
||||||
|
bones/11/rotation = Quaternion(-7.566992e-10, 4.6566073e-10, -9.313229e-10, 1)
|
||||||
|
bones/14/rotation = Quaternion(0.88124394, 0.03244469, 0.43789235, -0.17494844)
|
||||||
|
bones/15/rotation = Quaternion(-1.1794475e-08, 6.1331285e-08, 0.9187617, 0.39481288)
|
||||||
|
bones/16/rotation = Quaternion(0.029948184, -0.036407195, -0.18585202, 0.9814462)
|
||||||
|
bones/18/rotation = Quaternion(0.6445215, 0.21459225, -0.094257906, -0.72777593)
|
||||||
|
bones/19/rotation = Quaternion(-1.332124e-08, -2.4520514e-08, -0.15752357, 0.98751533)
|
||||||
|
bones/20/rotation = Quaternion(-0.14214668, -0.45634764, -0.17772992, 0.86020535)
|
||||||
|
bones/22/position = Vector3(0.012593047, -0.0085772155, 0.0021641199)
|
||||||
|
|
||||||
|
[node name="Soldier_Male_Mesh" parent="Soldier/Skeleton3D" index="0" unique_id=1081951616]
|
||||||
|
surface_material_override/0 = SubResource("StandardMaterial3D_n4j5p")
|
||||||
@ -35,6 +35,10 @@ project/assembly_name="QuakeBall"
|
|||||||
|
|
||||||
naming/node_name_casing=2
|
naming/node_name_casing=2
|
||||||
|
|
||||||
|
[filesystem]
|
||||||
|
|
||||||
|
import/blender/enabled=false
|
||||||
|
|
||||||
[input]
|
[input]
|
||||||
|
|
||||||
toggle_cli={
|
toggle_cli={
|
||||||
|
|||||||
@ -1,21 +0,0 @@
|
|||||||
[gd_scene format=3 uid="uid://ct70bpbca8one"]
|
|
||||||
|
|
||||||
[sub_resource type="CapsuleMesh" id="CapsuleMesh_1cgct"]
|
|
||||||
|
|
||||||
[sub_resource type="CapsuleShape3D" id="CapsuleShape3D_1cgct"]
|
|
||||||
|
|
||||||
[node name="player" type="LocalPlayer" unique_id=863055906 node_paths=PackedStringArray("camera")]
|
|
||||||
look_sensitivity = 1.5
|
|
||||||
camera = NodePath("camera_3d")
|
|
||||||
move_speed = 5.0
|
|
||||||
collision_mask = 2
|
|
||||||
|
|
||||||
[node name="mesh_instance_3d" type="MeshInstance3D" parent="." unique_id=700336478]
|
|
||||||
mesh = SubResource("CapsuleMesh_1cgct")
|
|
||||||
|
|
||||||
[node name="collision_shape_3d" type="CollisionShape3D" parent="." unique_id=1110995513]
|
|
||||||
shape = SubResource("CapsuleShape3D_1cgct")
|
|
||||||
|
|
||||||
[node name="camera_3d" type="Camera3D" parent="." unique_id=1773137418]
|
|
||||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.5391109, 0)
|
|
||||||
current = true
|
|
||||||
@ -1,7 +1,7 @@
|
|||||||
[gd_scene format=3 uid="uid://7iooamjot1tg"]
|
[gd_scene format=3 uid="uid://7iooamjot1tg"]
|
||||||
|
|
||||||
[ext_resource type="PackedScene" uid="uid://ct70bpbca8one" path="res://scenes/local_player.tscn" id="1_yjvui"]
|
[ext_resource type="PackedScene" uid="uid://ct70bpbca8one" path="res://scenes/player/local_player.tscn" id="1_yjvui"]
|
||||||
[ext_resource type="PackedScene" uid="uid://kfxc0migw80o" path="res://scenes/remote_player.tscn" id="2_kcncr"]
|
[ext_resource type="PackedScene" uid="uid://kfxc0migw80o" path="res://scenes/player/remote_player.tscn" id="2_kcncr"]
|
||||||
|
|
||||||
[sub_resource type="ImageTexture" id="ImageTexture_3vyb7"]
|
[sub_resource type="ImageTexture" id="ImageTexture_3vyb7"]
|
||||||
|
|
||||||
|
|||||||
23
godot/scenes/player/local_player.tscn
Normal file
23
godot/scenes/player/local_player.tscn
Normal file
@ -0,0 +1,23 @@
|
|||||||
|
[gd_scene format=3 uid="uid://ct70bpbca8one"]
|
||||||
|
|
||||||
|
[ext_resource type="PackedScene" uid="uid://bod6b3befmyt5" path="res://scenes/player/soldier_m.tscn" id="1_jd651"]
|
||||||
|
|
||||||
|
[sub_resource type="CapsuleShape3D" id="CapsuleShape3D_oh8vq"]
|
||||||
|
|
||||||
|
[node name="player" type="LocalPlayer" unique_id=863055906 node_paths=PackedStringArray("camera", "soldier_mesh")]
|
||||||
|
look_sensitivity = 1.5
|
||||||
|
camera = NodePath("camera_3d")
|
||||||
|
move_speed = 5.0
|
||||||
|
soldier_mesh = NodePath("soldier_m")
|
||||||
|
collision_mask = 2
|
||||||
|
|
||||||
|
[node name="camera_3d" type="Camera3D" parent="." unique_id=1773137418]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1.8724979, -0.2644562)
|
||||||
|
current = true
|
||||||
|
|
||||||
|
[node name="soldier_m" parent="." unique_id=281995630 instance=ExtResource("1_jd651")]
|
||||||
|
transform = Transform3D(-0.5, 0, -4.371139e-08, 0, 0.5, 0, 4.371139e-08, 0, -0.5, 0, 0, 0)
|
||||||
|
|
||||||
|
[node name="collision_shape_3d2" type="CollisionShape3D" parent="." unique_id=442150782]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1.0310049, 0)
|
||||||
|
shape = SubResource("CapsuleShape3D_oh8vq")
|
||||||
7
godot/scenes/player/raygun.tscn
Normal file
7
godot/scenes/player/raygun.tscn
Normal file
@ -0,0 +1,7 @@
|
|||||||
|
[gd_scene format=3 uid="uid://cw7duhhjebypt"]
|
||||||
|
|
||||||
|
[ext_resource type="PackedScene" uid="uid://cg81784ct8gf5" path="res://mesh/raygun.tscn" id="1_ckadf"]
|
||||||
|
|
||||||
|
[node name="raygun" type="Node3D" unique_id=255606277]
|
||||||
|
|
||||||
|
[node name="Raygun" parent="." unique_id=1928455392 instance=ExtResource("1_ckadf")]
|
||||||
17
godot/scenes/player/remote_player.tscn
Normal file
17
godot/scenes/player/remote_player.tscn
Normal file
@ -0,0 +1,17 @@
|
|||||||
|
[gd_scene format=3 uid="uid://kfxc0migw80o"]
|
||||||
|
|
||||||
|
[ext_resource type="PackedScene" uid="uid://bod6b3befmyt5" path="res://scenes/player/soldier_m.tscn" id="1_e2ekk"]
|
||||||
|
|
||||||
|
[sub_resource type="CapsuleShape3D" id="CapsuleShape3D_1cgct"]
|
||||||
|
|
||||||
|
[node name="player" type="RemotePlayer" unique_id=845968872 node_paths=PackedStringArray("soldier_mesh")]
|
||||||
|
move_speed = 5.0
|
||||||
|
soldier_mesh = NodePath("soldier_m")
|
||||||
|
collision_mask = 2
|
||||||
|
|
||||||
|
[node name="soldier_m" parent="." unique_id=281995630 instance=ExtResource("1_e2ekk")]
|
||||||
|
transform = Transform3D(-0.5, 0, -4.371139e-08, 0, 0.5, 0, 4.371139e-08, 0, -0.5, 0, 0, 0)
|
||||||
|
|
||||||
|
[node name="collision_shape_3d" type="CollisionShape3D" parent="." unique_id=1110995513]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1.0310049, 0)
|
||||||
|
shape = SubResource("CapsuleShape3D_1cgct")
|
||||||
1009
godot/scenes/player/soldier_m.tscn
Normal file
1009
godot/scenes/player/soldier_m.tscn
Normal file
File diff suppressed because it is too large
Load Diff
@ -1,15 +0,0 @@
|
|||||||
[gd_scene format=3 uid="uid://kfxc0migw80o"]
|
|
||||||
|
|
||||||
[sub_resource type="CapsuleMesh" id="CapsuleMesh_1cgct"]
|
|
||||||
|
|
||||||
[sub_resource type="CapsuleShape3D" id="CapsuleShape3D_1cgct"]
|
|
||||||
|
|
||||||
[node name="player" type="RemotePlayer" unique_id=845968872]
|
|
||||||
move_speed = 5.0
|
|
||||||
collision_mask = 2
|
|
||||||
|
|
||||||
[node name="mesh_instance_3d" type="MeshInstance3D" parent="." unique_id=700336478]
|
|
||||||
mesh = SubResource("CapsuleMesh_1cgct")
|
|
||||||
|
|
||||||
[node name="collision_shape_3d" type="CollisionShape3D" parent="." unique_id=1110995513]
|
|
||||||
shape = SubResource("CapsuleShape3D_1cgct")
|
|
||||||
@ -7,6 +7,7 @@ pub mod map;
|
|||||||
pub mod map_resource;
|
pub mod map_resource;
|
||||||
pub mod net;
|
pub mod net;
|
||||||
pub mod player;
|
pub mod player;
|
||||||
|
pub mod soldier_mesh;
|
||||||
pub mod ui;
|
pub mod ui;
|
||||||
|
|
||||||
struct MyExtension;
|
struct MyExtension;
|
||||||
|
|||||||
@ -15,6 +15,7 @@ use crate::{
|
|||||||
network_manager::{NetworkManager, Package::Jump, PeerKind},
|
network_manager::{NetworkManager, Package::Jump, PeerKind},
|
||||||
util::NetVector3,
|
util::NetVector3,
|
||||||
},
|
},
|
||||||
|
soldier_mesh::SoldierMesh,
|
||||||
ui::cli::CommandLinePanel,
|
ui::cli::CommandLinePanel,
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -70,6 +71,8 @@ pub struct LocalPlayer {
|
|||||||
camera: Option<Gd<Camera3D>>,
|
camera: Option<Gd<Camera3D>>,
|
||||||
#[export]
|
#[export]
|
||||||
move_speed: f32,
|
move_speed: f32,
|
||||||
|
#[export]
|
||||||
|
soldier_mesh: Option<Gd<SoldierMesh>>,
|
||||||
|
|
||||||
pub player_id: Option<u16>,
|
pub player_id: Option<u16>,
|
||||||
|
|
||||||
@ -151,6 +154,10 @@ impl ICharacterBody3D for LocalPlayer {
|
|||||||
.connect_other(self, |s| {
|
.connect_other(self, |s| {
|
||||||
s.set_lock(true);
|
s.set_lock(true);
|
||||||
});
|
});
|
||||||
|
|
||||||
|
if let Some(mesh) = &mut self.soldier_mesh {
|
||||||
|
mesh.bind_mut().spawn_raygun();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
fn process(&mut self, delta: f64) {
|
fn process(&mut self, delta: f64) {
|
||||||
@ -209,6 +216,8 @@ impl LocalPlayer {
|
|||||||
pub struct RemotePlayer {
|
pub struct RemotePlayer {
|
||||||
#[export]
|
#[export]
|
||||||
move_speed: f32,
|
move_speed: f32,
|
||||||
|
#[export]
|
||||||
|
soldier_mesh: Option<Gd<SoldierMesh>>,
|
||||||
|
|
||||||
pub player_id: Option<u16>,
|
pub player_id: Option<u16>,
|
||||||
|
|
||||||
@ -269,7 +278,18 @@ impl IPlayer for RemotePlayer {
|
|||||||
|
|
||||||
#[godot_api]
|
#[godot_api]
|
||||||
impl ICharacterBody3D for RemotePlayer {
|
impl ICharacterBody3D for RemotePlayer {
|
||||||
|
fn ready(&mut self) {
|
||||||
|
if let Some(mesh) = &mut self.soldier_mesh {
|
||||||
|
mesh.bind_mut().spawn_raygun();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
fn process(&mut self, delta: f64) {
|
fn process(&mut self, delta: f64) {
|
||||||
self.player_update(delta);
|
self.player_update(delta);
|
||||||
|
|
||||||
|
if let Some(mesh) = &mut self.soldier_mesh {
|
||||||
|
mesh.bind_mut()
|
||||||
|
.update_movement(Vector2::new(self.movement_dir.x, -self.movement_dir.z));
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
38
rust/src/soldier_mesh.rs
Normal file
38
rust/src/soldier_mesh.rs
Normal file
@ -0,0 +1,38 @@
|
|||||||
|
use godot::{
|
||||||
|
classes::{AnimationPlayer, AnimationTree},
|
||||||
|
prelude::*,
|
||||||
|
};
|
||||||
|
|
||||||
|
#[derive(GodotClass)]
|
||||||
|
#[class(base=Node3D, init)]
|
||||||
|
pub struct SoldierMesh {
|
||||||
|
#[export]
|
||||||
|
hand_attachment: Option<Gd<Node3D>>,
|
||||||
|
#[export]
|
||||||
|
animation_tree: Option<Gd<AnimationTree>>,
|
||||||
|
#[export]
|
||||||
|
raygun: Option<Gd<PackedScene>>,
|
||||||
|
|
||||||
|
base: Base<Node3D>,
|
||||||
|
}
|
||||||
|
|
||||||
|
impl SoldierMesh {
|
||||||
|
pub fn update_movement(&mut self, movement: Vector2) {
|
||||||
|
if let Some(tree) = &mut self.animation_tree {
|
||||||
|
tree.set("parameters/Movement/blend_position", &movement.to_variant());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
pub fn spawn_raygun(&mut self) {
|
||||||
|
if let Some(raygun) = &self.raygun {
|
||||||
|
let node = raygun.instantiate_as::<Node3D>();
|
||||||
|
self.spawn_weapon(node);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
fn spawn_weapon(&mut self, node: Gd<Node3D>) {
|
||||||
|
if let Some(hand) = &mut self.hand_attachment {
|
||||||
|
hand.add_child(&node);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
Loading…
Reference in New Issue
Block a user