Extensive work on VFX for the guild, assets for the world, and portrait variance. Work on quests. Extra work on User Flow completion and file saving.

This commit is contained in:
2025-09-04 07:46:55 -04:00
parent 149ee993dc
commit 48e335f56a
134 changed files with 2232 additions and 288 deletions

View File

@@ -1 +1,135 @@
extends TextureRect
class_name ColorVariant extends TextureRect
enum Types{
SKIN,
HAIR,
EYES
}
static var eye_colors = {
"blue":{
"weight": 100,
"color": preload("res://external/test portrait/gradients/eyes/(c)blue.tres"),
"luminosity": preload("res://external/test portrait/gradients/eyes/(l)fair.tres"),
},
"green":{
"weight": 100,
"color": preload("res://external/test portrait/gradients/eyes/(c)green.tres"),
"luminosity": preload("res://external/test portrait/gradients/eyes/(l)default.tres"),
},
"brown":{
"weight": 100,
"color": preload("res://external/test portrait/gradients/eyes/(c)blue.tres"),
"luminosity": preload("res://external/test portrait/gradients/eyes/(c)blue.tres"),
},
"gold":{
"weight": 100,
"color": preload("res://external/test portrait/gradients/eyes/(c)blue.tres"),
"luminosity": preload("res://external/test portrait/gradients/eyes/(c)blue.tres"),
},
"red":{
"weight": 100,
"color": preload("res://external/test portrait/gradients/eyes/(c)blue.tres"),
"luminosity": preload("res://external/test portrait/gradients/eyes/(c)blue.tres"),
},
"grey":{
"weight": 100,
"color": preload("res://external/test portrait/gradients/eyes/(c)blue.tres"),
"luminosity": preload("res://external/test portrait/gradients/eyes/(c)blue.tres"),
},
}
static var hair_colors = {
"blue":{
"weight": 100,
"color": preload("res://external/test portrait/gradients/eyes/(c)blue.tres"),
"luminosity": preload("res://external/test portrait/gradients/eyes/(c)blue.tres"),
},
"blonde":{
"weight": 100,
"color": preload("res://external/test portrait/gradients/hair/(c)blonde.tres"),
"luminosity": preload("res://external/test portrait/gradients/hair/(l)fair.tres"),
},
"brown":{
"weight": 100,
"color": preload("res://external/test portrait/gradients/hair/(c)brown.tres"),
"luminosity": preload("res://external/test portrait/gradients/hair/(l)dark.tres"),
},
"black":{
"weight": 100,
"color": preload("res://external/test portrait/gradients/hair/(c)black.tres"),
"luminosity": preload("res://external/test portrait/gradients/hair/(l)black.tres"),
},
"red":{
"weight": 100,
"color": preload("res://external/test portrait/gradients/hair/(c)red.tres"),
"luminosity": preload("res://external/test portrait/gradients/hair/(l)red.tres"),
},
"silver":{
"weight": 100,
"color": preload("res://external/test portrait/gradients/eyes/(c)blue.tres"),
"luminosity": preload("res://external/test portrait/gradients/eyes/(c)blue.tres"),
},
}
static var skin_colors = {
"pale":{
"weight": 100,
"color": preload("res://external/test portrait/gradients/eyes/(c)blue.tres"),
"luminosity": preload("res://external/test portrait/gradients/eyes/(c)blue.tres"),
},
"medium":{
"weight": 100,
"color": preload("res://external/test portrait/gradients/eyes/(c)blue.tres"),
"luminosity": preload("res://external/test portrait/gradients/eyes/(c)blue.tres"),
},
"olive":{
"weight": 100,
"color": preload("res://external/test portrait/gradients/eyes/(c)blue.tres"),
"luminosity": preload("res://external/test portrait/gradients/eyes/(c)blue.tres"),
},
"brown":{
"weight": 100,
"color": preload("res://external/test portrait/gradients/eyes/(c)blue.tres"),
"luminosity": preload("res://external/test portrait/gradients/eyes/(c)blue.tres"),
},
"dark":{
"weight": 100,
"color": preload("res://external/test portrait/gradients/eyes/(c)blue.tres"),
"luminosity": preload("res://external/test portrait/gradients/eyes/(l)default.tres"),
},
"white":{
"weight": 0,
"color": preload("res://external/test portrait/gradients/eyes/(c)blue.tres"),
"luminosity": preload("res://external/test portrait/gradients/eyes/(c)blue.tres"),
},
"red":{
"weight": 0,
"color": preload("res://external/test portrait/gradients/eyes/(c)blue.tres"),
"luminosity": preload("res://external/test portrait/gradients/eyes/(c)blue.tres"),
},
}
@export var type : Types
#@onready var variant_material : ShaderMaterial = material
func set_color(color : String) -> void:
var col_gradients
match(type):
Types.SKIN:
if !skin_colors.has(color):
printerr("Tried to set a color '%s' that isn't part of the skin color list!" % color)
return
col_gradients = skin_colors[color]
Types.HAIR:
if !hair_colors.has(color):
printerr("Tried to set a color '%s' that isn't part of the hair color list!" % color)
return
col_gradients = hair_colors[color]
Types.EYES:
if !eye_colors.has(color):
printerr("Tried to set a color '%s' that isn't part of the eye color list!" % color)
return
col_gradients = eye_colors[color]
var mat = material
mat.set_shader_parameter("color_gradient",col_gradients.color)
mat.set_shader_parameter("luminosity_gradient",col_gradients.luminosity)