2025-03-31 19:04:37 -06:00
|
|
|
class_name SurfaceMaterial
|
|
|
|
|
|
|
|
enum Type {
|
|
|
|
UNKNOWN,
|
|
|
|
GRUNK,
|
|
|
|
PLASTIC,
|
|
|
|
METAL,
|
|
|
|
}
|
|
|
|
|
|
|
|
const METAL_MATERIAL_GROUP := "MetalMaterial"
|
|
|
|
const PLASTIC_MATERIAL_GROUP := "PlasticMaterial"
|
|
|
|
|
|
|
|
|
|
|
|
static func material_for_collider(collider: Node) -> SurfaceMaterial.Type:
|
2025-04-01 12:38:15 -06:00
|
|
|
if collider:
|
|
|
|
if collider is GunkNode:
|
|
|
|
return Type.GRUNK
|
|
|
|
if collider.is_in_group(METAL_MATERIAL_GROUP):
|
|
|
|
return Type.METAL
|
|
|
|
if collider.is_in_group(PLASTIC_MATERIAL_GROUP):
|
|
|
|
return Type.PLASTIC
|
2025-03-31 19:04:37 -06:00
|
|
|
return Type.UNKNOWN
|