fix metal plate pickup
This commit is contained in:
+17
-13
@@ -5,6 +5,7 @@
|
|||||||
[ext_resource type="Texture2D" uid="uid://bjfuko7rdmax" path="res://assets/stone_big.png" id="3_klq6b"]
|
[ext_resource type="Texture2D" uid="uid://bjfuko7rdmax" path="res://assets/stone_big.png" id="3_klq6b"]
|
||||||
[ext_resource type="ArrayMesh" uid="uid://b5do7gjnxif80" path="res://assets/stonewall_long.obj" id="4_b121j"]
|
[ext_resource type="ArrayMesh" uid="uid://b5do7gjnxif80" path="res://assets/stonewall_long.obj" id="4_b121j"]
|
||||||
[ext_resource type="ArrayMesh" uid="uid://ul1cypdhef5a" path="res://assets/stone_big.obj" id="5_8c41q"]
|
[ext_resource type="ArrayMesh" uid="uid://ul1cypdhef5a" path="res://assets/stone_big.obj" id="5_8c41q"]
|
||||||
|
[ext_resource type="PackedScene" uid="uid://g7iron5etp8u" path="res://scenes/Iron.tscn" id="6_dke22"]
|
||||||
|
|
||||||
[sub_resource type="ProceduralSkyMaterial" id="ProceduralSkyMaterial_ppgk2"]
|
[sub_resource type="ProceduralSkyMaterial" id="ProceduralSkyMaterial_ppgk2"]
|
||||||
|
|
||||||
@@ -78,21 +79,21 @@ size = Vector3(0.6, 1, 0.6)
|
|||||||
[sub_resource type="BoxShape3D" id="BoxShape3D_forge"]
|
[sub_resource type="BoxShape3D" id="BoxShape3D_forge"]
|
||||||
size = Vector3(2, 1.8, 2)
|
size = Vector3(2, 1.8, 2)
|
||||||
|
|
||||||
[sub_resource type="BoxMesh" id="BoxMesh_etable"]
|
|
||||||
size = Vector3(1.4, 0.9, 1.4)
|
|
||||||
|
|
||||||
[sub_resource type="BoxMesh" id="BoxMesh_ebook"]
|
|
||||||
size = Vector3(0.7, 0.12, 0.5)
|
|
||||||
|
|
||||||
[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_etable"]
|
[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_etable"]
|
||||||
albedo_color = Color(0.12, 0.08, 0.22, 1)
|
albedo_color = Color(0.12, 0.08, 0.22, 1)
|
||||||
roughness = 0.6
|
|
||||||
metallic = 0.2
|
metallic = 0.2
|
||||||
|
roughness = 0.6
|
||||||
|
|
||||||
|
[sub_resource type="BoxMesh" id="BoxMesh_etable"]
|
||||||
|
size = Vector3(1.4, 0.9, 1.4)
|
||||||
|
|
||||||
[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_ebook"]
|
[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_ebook"]
|
||||||
albedo_color = Color(0.55, 0.08, 0.08, 1)
|
albedo_color = Color(0.55, 0.08, 0.08, 1)
|
||||||
roughness = 0.9
|
roughness = 0.9
|
||||||
|
|
||||||
|
[sub_resource type="BoxMesh" id="BoxMesh_ebook"]
|
||||||
|
size = Vector3(0.7, 0.12, 0.5)
|
||||||
|
|
||||||
[sub_resource type="BoxShape3D" id="BoxShape3D_etable"]
|
[sub_resource type="BoxShape3D" id="BoxShape3D_etable"]
|
||||||
size = Vector3(1.4, 0.9, 1.4)
|
size = Vector3(1.4, 0.9, 1.4)
|
||||||
|
|
||||||
@@ -261,18 +262,21 @@ mesh = SubResource("BoxMesh_chimney")
|
|||||||
[node name="CollisionShape3D" type="CollisionShape3D" parent="Forge" unique_id=726531191]
|
[node name="CollisionShape3D" type="CollisionShape3D" parent="Forge" unique_id=726531191]
|
||||||
shape = SubResource("BoxShape3D_forge")
|
shape = SubResource("BoxShape3D_forge")
|
||||||
|
|
||||||
[node name="EnchantingTable" type="StaticBody3D" parent="."]
|
[node name="EnchantingTable" type="StaticBody3D" parent="." unique_id=242813005]
|
||||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -8, 0.45, -8)
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -8, 0.45, -8)
|
||||||
metadata/is_enchanting_table = true
|
metadata/is_enchanting_table = true
|
||||||
|
|
||||||
[node name="TableMesh" type="MeshInstance3D" parent="EnchantingTable"]
|
[node name="TableMesh" type="MeshInstance3D" parent="EnchantingTable" unique_id=1719378953]
|
||||||
mesh = SubResource("BoxMesh_etable")
|
|
||||||
material_override = SubResource("StandardMaterial3D_etable")
|
material_override = SubResource("StandardMaterial3D_etable")
|
||||||
|
mesh = SubResource("BoxMesh_etable")
|
||||||
|
|
||||||
[node name="BookMesh" type="MeshInstance3D" parent="EnchantingTable"]
|
[node name="BookMesh" type="MeshInstance3D" parent="EnchantingTable" unique_id=444214832]
|
||||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.51, 0)
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.51, 0)
|
||||||
mesh = SubResource("BoxMesh_ebook")
|
|
||||||
material_override = SubResource("StandardMaterial3D_ebook")
|
material_override = SubResource("StandardMaterial3D_ebook")
|
||||||
|
mesh = SubResource("BoxMesh_ebook")
|
||||||
|
|
||||||
[node name="CollisionShape3D" type="CollisionShape3D" parent="EnchantingTable"]
|
[node name="CollisionShape3D" type="CollisionShape3D" parent="EnchantingTable" unique_id=352273224]
|
||||||
shape = SubResource("BoxShape3D_etable")
|
shape = SubResource("BoxShape3D_etable")
|
||||||
|
|
||||||
|
[node name="Iron" parent="." unique_id=611454609 instance=ExtResource("6_dke22")]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 5.4976616, 0.104292765, -5.8715014)
|
||||||
|
|||||||
@@ -25,3 +25,10 @@ mesh = SubResource("BoxMesh_1")
|
|||||||
[node name="CollisionShape3D" type="CollisionShape3D" parent="." unique_id=1642999883]
|
[node name="CollisionShape3D" type="CollisionShape3D" parent="." unique_id=1642999883]
|
||||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.005560264, 0.16739155, 0.003918484)
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.005560264, 0.16739155, 0.003918484)
|
||||||
shape = SubResource("BoxShape3D_1")
|
shape = SubResource("BoxShape3D_1")
|
||||||
|
|
||||||
|
[node name="Tooltip" type="Label3D" parent="."]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1.1, 0)
|
||||||
|
billboard = 1
|
||||||
|
text = "[E] Metal Plate
|
||||||
|
+1 Kick Tier"
|
||||||
|
outline_size = 6
|
||||||
|
|||||||
@@ -19,6 +19,7 @@ var dead: bool = false
|
|||||||
var damage_modifier: float = 1.2
|
var damage_modifier: float = 1.2
|
||||||
|
|
||||||
@onready var mesh_node: MeshInstance3D = $PlateMesh
|
@onready var mesh_node: MeshInstance3D = $PlateMesh
|
||||||
|
@onready var tooltip: Label3D = $Tooltip
|
||||||
var plate_mat: StandardMaterial3D
|
var plate_mat: StandardMaterial3D
|
||||||
|
|
||||||
const COLOR_IDLE := Color(0.6, 0.65, 0.72)
|
const COLOR_IDLE := Color(0.6, 0.65, 0.72)
|
||||||
@@ -26,8 +27,35 @@ const COLOR_IMPACT := Color(1.0, 1.0, 1.0)
|
|||||||
|
|
||||||
func _ready() -> void:
|
func _ready() -> void:
|
||||||
add_to_group("kickable")
|
add_to_group("kickable")
|
||||||
|
add_to_group("interactable")
|
||||||
plate_mat = mesh_node.material_override.duplicate() as StandardMaterial3D
|
plate_mat = mesh_node.material_override.duplicate() as StandardMaterial3D
|
||||||
mesh_node.material_override = plate_mat
|
mesh_node.material_override = plate_mat
|
||||||
|
tooltip.visible = false
|
||||||
|
|
||||||
|
func _process(_delta: float) -> void:
|
||||||
|
if dead:
|
||||||
|
tooltip.visible = false
|
||||||
|
return
|
||||||
|
var players := get_tree().get_nodes_in_group("player")
|
||||||
|
if players.is_empty():
|
||||||
|
tooltip.visible = false
|
||||||
|
return
|
||||||
|
var p := players[0] as Node3D
|
||||||
|
tooltip.visible = p != null and global_position.distance_to(p.global_position) < 2.5
|
||||||
|
|
||||||
|
func interact(player: Node) -> void:
|
||||||
|
if dead:
|
||||||
|
return
|
||||||
|
player.call("apply_upgrade_armor")
|
||||||
|
dead = true
|
||||||
|
set_physics_process(false)
|
||||||
|
tooltip.visible = false
|
||||||
|
remove_from_group("interactable")
|
||||||
|
remove_from_group("kickable")
|
||||||
|
var tw := create_tween()
|
||||||
|
tw.tween_property(self, "scale", Vector3(1.4, 0.1, 1.4), 0.15)
|
||||||
|
tw.tween_property(self, "scale", Vector3(0.0, 0.0, 0.0), 0.1)
|
||||||
|
tw.tween_callback(queue_free)
|
||||||
|
|
||||||
func apply_collision_damage(dmg: float) -> void:
|
func apply_collision_damage(dmg: float) -> void:
|
||||||
_take_damage(dmg)
|
_take_damage(dmg)
|
||||||
|
|||||||
Reference in New Issue
Block a user