фиксы-кокащек
This commit is contained in:
parent
8ab62ec644
commit
a5a791ac95
18 changed files with 7171 additions and 233 deletions
|
|
@ -1,5 +1,6 @@
|
|||
using System.Linq;
|
||||
using Content.Shared.Construction.Prototypes;
|
||||
using Content.Shared.Humanoid;
|
||||
using Content.Shared.Preferences;
|
||||
using Robust.Client;
|
||||
using Robust.Client.Player;
|
||||
|
|
@ -67,6 +68,15 @@ namespace Content.Client.Lobby
|
|||
var collection = IoCManager.Instance!;
|
||||
// Sunrise-Sponsors-Start
|
||||
var sponsorPrototypes = _sponsorsManager?.GetClientPrototypes().ToArray() ?? [];
|
||||
|
||||
// Log initial profile state
|
||||
var initialAppearance = (HumanoidCharacterAppearance) profile.CharacterAppearance;
|
||||
Logger.Debug("Initial profile state:");
|
||||
Logger.Debug($"Profile type: {profile.GetType().Name}");
|
||||
Logger.Debug($"Initial Hair gradient: enabled={initialAppearance.HairGradientEnabled}, color={initialAppearance.HairGradientSecondaryColor}, dir={initialAppearance.HairGradientDirection}");
|
||||
Logger.Debug($"Initial FacialHair gradient: enabled={initialAppearance.FacialHairGradientEnabled}, color={initialAppearance.FacialHairGradientSecondaryColor}, dir={initialAppearance.FacialHairGradientDirection}");
|
||||
Logger.Debug($"Initial AllMarkings gradient: enabled={initialAppearance.AllMarkingsGradientEnabled}, color={initialAppearance.AllMarkingsGradientSecondaryColor}, dir={initialAppearance.AllMarkingsGradientDirection}");
|
||||
|
||||
profile.EnsureValid(_playerManager.LocalSession!, collection, sponsorPrototypes);
|
||||
// Sunrise-Sponsors-End
|
||||
var characters = new Dictionary<int, ICharacterProfile>(Preferences.Characters) {[slot] = profile};
|
||||
|
|
|
|||
|
|
@ -2159,8 +2159,6 @@ namespace Content.Client.Lobby.UI
|
|||
{
|
||||
AllMarkingsGradientDirectionSelector.SelectId(Profile.Appearance.AllMarkingsGradientDirection);
|
||||
}
|
||||
|
||||
Logger.Debug($"Sunrise: Градиентные контролы обновлены - Hair: {Profile.Appearance.HairGradientEnabled}, FacialHair: {Profile.Appearance.FacialHairGradientEnabled}, AllMarkings: {Profile.Appearance.AllMarkingsGradientEnabled}");
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
|
|
|
|||
2193
Content.Server.Database/Migrations/Postgres/20250724212329_Gradient.Designer.cs
generated
Normal file
2193
Content.Server.Database/Migrations/Postgres/20250724212329_Gradient.Designer.cs
generated
Normal file
File diff suppressed because it is too large
Load diff
|
|
@ -0,0 +1,62 @@
|
|||
using Microsoft.EntityFrameworkCore.Migrations;
|
||||
|
||||
#nullable disable
|
||||
|
||||
namespace Content.Server.Database.Migrations.Postgres
|
||||
{
|
||||
/// <inheritdoc />
|
||||
public partial class Gradient : Migration
|
||||
{
|
||||
/// <inheritdoc />
|
||||
protected override void Up(MigrationBuilder migrationBuilder)
|
||||
{
|
||||
migrationBuilder.AddColumn<int>(
|
||||
name: "facial_hair_color_type",
|
||||
table: "profile",
|
||||
type: "integer",
|
||||
nullable: false,
|
||||
defaultValue: 0);
|
||||
|
||||
migrationBuilder.AddColumn<string>(
|
||||
name: "facial_hair_extended_color",
|
||||
table: "profile",
|
||||
type: "text",
|
||||
nullable: false,
|
||||
defaultValue: "");
|
||||
|
||||
migrationBuilder.AddColumn<int>(
|
||||
name: "hair_color_type",
|
||||
table: "profile",
|
||||
type: "integer",
|
||||
nullable: false,
|
||||
defaultValue: 0);
|
||||
|
||||
migrationBuilder.AddColumn<string>(
|
||||
name: "hair_extended_color",
|
||||
table: "profile",
|
||||
type: "text",
|
||||
nullable: false,
|
||||
defaultValue: "");
|
||||
}
|
||||
|
||||
/// <inheritdoc />
|
||||
protected override void Down(MigrationBuilder migrationBuilder)
|
||||
{
|
||||
migrationBuilder.DropColumn(
|
||||
name: "facial_hair_color_type",
|
||||
table: "profile");
|
||||
|
||||
migrationBuilder.DropColumn(
|
||||
name: "facial_hair_extended_color",
|
||||
table: "profile");
|
||||
|
||||
migrationBuilder.DropColumn(
|
||||
name: "hair_color_type",
|
||||
table: "profile");
|
||||
|
||||
migrationBuilder.DropColumn(
|
||||
name: "hair_extended_color",
|
||||
table: "profile");
|
||||
}
|
||||
}
|
||||
}
|
||||
2347
Content.Server.Database/Migrations/Postgres/20250926230103_GradientUpdate.Designer.cs
generated
Normal file
2347
Content.Server.Database/Migrations/Postgres/20250926230103_GradientUpdate.Designer.cs
generated
Normal file
File diff suppressed because it is too large
Load diff
|
|
@ -1,52 +1,37 @@
|
|||
using Microsoft.EntityFrameworkCore.Migrations;
|
||||
using Microsoft.EntityFrameworkCore.Migrations;
|
||||
|
||||
#nullable disable
|
||||
|
||||
namespace Content.Server.Database.Migrations.Postgres
|
||||
{
|
||||
/// <inheritdoc />
|
||||
public partial class GradientFields : Migration
|
||||
public partial class GradientUpdate : Migration
|
||||
{
|
||||
/// <inheritdoc />
|
||||
protected override void Up(MigrationBuilder migrationBuilder)
|
||||
{
|
||||
migrationBuilder.AddColumn<bool>(
|
||||
name: "hair_gradient_enabled",
|
||||
migrationBuilder.RenameColumn(
|
||||
name: "hair_extended_color",
|
||||
table: "profile",
|
||||
type: "boolean",
|
||||
nullable: false,
|
||||
defaultValue: false);
|
||||
newName: "hair_gradient_secondary_color");
|
||||
|
||||
migrationBuilder.AddColumn<string>(
|
||||
name: "hair_gradient_secondary_color",
|
||||
migrationBuilder.RenameColumn(
|
||||
name: "hair_color_type",
|
||||
table: "profile",
|
||||
type: "text",
|
||||
nullable: false,
|
||||
defaultValue: "#FFFFFF");
|
||||
newName: "hair_gradient_direction");
|
||||
|
||||
migrationBuilder.RenameColumn(
|
||||
name: "facial_hair_extended_color",
|
||||
table: "profile",
|
||||
newName: "facial_hair_gradient_secondary_color");
|
||||
|
||||
migrationBuilder.RenameColumn(
|
||||
name: "facial_hair_color_type",
|
||||
table: "profile",
|
||||
newName: "facial_hair_gradient_direction");
|
||||
|
||||
migrationBuilder.AddColumn<int>(
|
||||
name: "hair_gradient_direction",
|
||||
table: "profile",
|
||||
type: "integer",
|
||||
nullable: false,
|
||||
defaultValue: 0);
|
||||
|
||||
migrationBuilder.AddColumn<bool>(
|
||||
name: "facial_hair_gradient_enabled",
|
||||
table: "profile",
|
||||
type: "boolean",
|
||||
nullable: false,
|
||||
defaultValue: false);
|
||||
|
||||
migrationBuilder.AddColumn<string>(
|
||||
name: "facial_hair_gradient_secondary_color",
|
||||
table: "profile",
|
||||
type: "text",
|
||||
nullable: false,
|
||||
defaultValue: "#FFFFFF");
|
||||
|
||||
migrationBuilder.AddColumn<int>(
|
||||
name: "facial_hair_gradient_direction",
|
||||
name: "all_markings_gradient_direction",
|
||||
table: "profile",
|
||||
type: "integer",
|
||||
nullable: false,
|
||||
|
|
@ -64,41 +49,28 @@ namespace Content.Server.Database.Migrations.Postgres
|
|||
table: "profile",
|
||||
type: "text",
|
||||
nullable: false,
|
||||
defaultValue: "#FFFFFF");
|
||||
defaultValue: "");
|
||||
|
||||
migrationBuilder.AddColumn<int>(
|
||||
name: "all_markings_gradient_direction",
|
||||
migrationBuilder.AddColumn<bool>(
|
||||
name: "facial_hair_gradient_enabled",
|
||||
table: "profile",
|
||||
type: "integer",
|
||||
type: "boolean",
|
||||
nullable: false,
|
||||
defaultValue: 0);
|
||||
defaultValue: false);
|
||||
|
||||
migrationBuilder.AddColumn<bool>(
|
||||
name: "hair_gradient_enabled",
|
||||
table: "profile",
|
||||
type: "boolean",
|
||||
nullable: false,
|
||||
defaultValue: false);
|
||||
}
|
||||
|
||||
/// <inheritdoc />
|
||||
protected override void Down(MigrationBuilder migrationBuilder)
|
||||
{
|
||||
migrationBuilder.DropColumn(
|
||||
name: "hair_gradient_enabled",
|
||||
table: "profile");
|
||||
|
||||
migrationBuilder.DropColumn(
|
||||
name: "hair_gradient_secondary_color",
|
||||
table: "profile");
|
||||
|
||||
migrationBuilder.DropColumn(
|
||||
name: "hair_gradient_direction",
|
||||
table: "profile");
|
||||
|
||||
migrationBuilder.DropColumn(
|
||||
name: "facial_hair_gradient_enabled",
|
||||
table: "profile");
|
||||
|
||||
migrationBuilder.DropColumn(
|
||||
name: "facial_hair_gradient_secondary_color",
|
||||
table: "profile");
|
||||
|
||||
migrationBuilder.DropColumn(
|
||||
name: "facial_hair_gradient_direction",
|
||||
name: "all_markings_gradient_direction",
|
||||
table: "profile");
|
||||
|
||||
migrationBuilder.DropColumn(
|
||||
|
|
@ -110,8 +82,32 @@ namespace Content.Server.Database.Migrations.Postgres
|
|||
table: "profile");
|
||||
|
||||
migrationBuilder.DropColumn(
|
||||
name: "all_markings_gradient_direction",
|
||||
name: "facial_hair_gradient_enabled",
|
||||
table: "profile");
|
||||
|
||||
migrationBuilder.DropColumn(
|
||||
name: "hair_gradient_enabled",
|
||||
table: "profile");
|
||||
|
||||
migrationBuilder.RenameColumn(
|
||||
name: "hair_gradient_secondary_color",
|
||||
table: "profile",
|
||||
newName: "hair_extended_color");
|
||||
|
||||
migrationBuilder.RenameColumn(
|
||||
name: "hair_gradient_direction",
|
||||
table: "profile",
|
||||
newName: "hair_color_type");
|
||||
|
||||
migrationBuilder.RenameColumn(
|
||||
name: "facial_hair_gradient_secondary_color",
|
||||
table: "profile",
|
||||
newName: "facial_hair_extended_color");
|
||||
|
||||
migrationBuilder.RenameColumn(
|
||||
name: "facial_hair_gradient_direction",
|
||||
table: "profile",
|
||||
newName: "facial_hair_color_type");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -988,6 +988,19 @@ namespace Content.Server.Database.Migrations.Postgres
|
|||
.HasColumnType("integer")
|
||||
.HasColumnName("age");
|
||||
|
||||
b.Property<int>("AllMarkingsGradientDirection")
|
||||
.HasColumnType("integer")
|
||||
.HasColumnName("all_markings_gradient_direction");
|
||||
|
||||
b.Property<bool>("AllMarkingsGradientEnabled")
|
||||
.HasColumnType("boolean")
|
||||
.HasColumnName("all_markings_gradient_enabled");
|
||||
|
||||
b.Property<string>("AllMarkingsGradientSecondaryColor")
|
||||
.IsRequired()
|
||||
.HasColumnType("text")
|
||||
.HasColumnName("all_markings_gradient_secondary_color");
|
||||
|
||||
b.Property<string>("BodyType")
|
||||
.IsRequired()
|
||||
.HasColumnType("text")
|
||||
|
|
@ -1008,6 +1021,19 @@ namespace Content.Server.Database.Migrations.Postgres
|
|||
.HasColumnType("text")
|
||||
.HasColumnName("facial_hair_color");
|
||||
|
||||
b.Property<int>("FacialHairGradientDirection")
|
||||
.HasColumnType("integer")
|
||||
.HasColumnName("facial_hair_gradient_direction");
|
||||
|
||||
b.Property<bool>("FacialHairGradientEnabled")
|
||||
.HasColumnType("boolean")
|
||||
.HasColumnName("facial_hair_gradient_enabled");
|
||||
|
||||
b.Property<string>("FacialHairGradientSecondaryColor")
|
||||
.IsRequired()
|
||||
.HasColumnType("text")
|
||||
.HasColumnName("facial_hair_gradient_secondary_color");
|
||||
|
||||
b.Property<string>("FacialHairName")
|
||||
.IsRequired()
|
||||
.HasColumnType("text")
|
||||
|
|
@ -1028,6 +1054,19 @@ namespace Content.Server.Database.Migrations.Postgres
|
|||
.HasColumnType("text")
|
||||
.HasColumnName("hair_color");
|
||||
|
||||
b.Property<int>("HairGradientDirection")
|
||||
.HasColumnType("integer")
|
||||
.HasColumnName("hair_gradient_direction");
|
||||
|
||||
b.Property<bool>("HairGradientEnabled")
|
||||
.HasColumnType("boolean")
|
||||
.HasColumnName("hair_gradient_enabled");
|
||||
|
||||
b.Property<string>("HairGradientSecondaryColor")
|
||||
.IsRequired()
|
||||
.HasColumnType("text")
|
||||
.HasColumnName("hair_gradient_secondary_color");
|
||||
|
||||
b.Property<string>("HairName")
|
||||
.IsRequired()
|
||||
.HasColumnType("text")
|
||||
|
|
@ -1081,45 +1120,6 @@ namespace Content.Server.Database.Migrations.Postgres
|
|||
.HasColumnType("real")
|
||||
.HasColumnName("width");
|
||||
|
||||
b.Property<bool>("AllMarkingsGradientEnabled")
|
||||
.HasColumnType("boolean")
|
||||
.HasColumnName("all_markings_gradient_enabled");
|
||||
|
||||
b.Property<string>("AllMarkingsGradientSecondaryColor")
|
||||
.IsRequired()
|
||||
.HasColumnType("text")
|
||||
.HasColumnName("all_markings_gradient_secondary_color");
|
||||
|
||||
b.Property<int>("AllMarkingsGradientDirection")
|
||||
.HasColumnType("integer")
|
||||
.HasColumnName("all_markings_gradient_direction");
|
||||
|
||||
b.Property<bool>("FacialHairGradientEnabled")
|
||||
.HasColumnType("boolean")
|
||||
.HasColumnName("facial_hair_gradient_enabled");
|
||||
|
||||
b.Property<string>("FacialHairGradientSecondaryColor")
|
||||
.IsRequired()
|
||||
.HasColumnType("text")
|
||||
.HasColumnName("facial_hair_gradient_secondary_color");
|
||||
|
||||
b.Property<int>("FacialHairGradientDirection")
|
||||
.HasColumnType("integer")
|
||||
.HasColumnName("facial_hair_gradient_direction");
|
||||
|
||||
b.Property<bool>("HairGradientEnabled")
|
||||
.HasColumnType("boolean")
|
||||
.HasColumnName("hair_gradient_enabled");
|
||||
|
||||
b.Property<string>("HairGradientSecondaryColor")
|
||||
.IsRequired()
|
||||
.HasColumnType("text")
|
||||
.HasColumnName("hair_gradient_secondary_color");
|
||||
|
||||
b.Property<int>("HairGradientDirection")
|
||||
.HasColumnType("integer")
|
||||
.HasColumnName("hair_gradient_direction");
|
||||
|
||||
b.HasKey("Id")
|
||||
.HasName("PK_profile");
|
||||
|
||||
|
|
|
|||
|
|
@ -11,8 +11,8 @@ using Microsoft.EntityFrameworkCore.Storage.ValueConversion;
|
|||
namespace Content.Server.Database.Migrations.Sqlite
|
||||
{
|
||||
[DbContext(typeof(SqliteServerDbContext))]
|
||||
[Migration("20250910035429_GradientFields")]
|
||||
partial class GradientFields
|
||||
[Migration("20250724212307_Gradient")]
|
||||
partial class Gradient
|
||||
{
|
||||
/// <inheritdoc />
|
||||
protected override void BuildTargetModel(ModelBuilder modelBuilder)
|
||||
|
|
@ -136,10 +136,6 @@ namespace Content.Server.Database.Migrations.Sqlite
|
|||
.HasColumnType("INTEGER")
|
||||
.HasColumnName("admin_log_id");
|
||||
|
||||
b.Property<long>("CurTime")
|
||||
.HasColumnType("INTEGER")
|
||||
.HasColumnName("cur_time");
|
||||
|
||||
b.Property<DateTime>("Date")
|
||||
.HasColumnType("TEXT")
|
||||
.HasColumnName("date");
|
||||
|
|
@ -831,19 +827,6 @@ namespace Content.Server.Database.Migrations.Sqlite
|
|||
.HasColumnType("INTEGER")
|
||||
.HasColumnName("age");
|
||||
|
||||
b.Property<int>("AllMarkingsGradientDirection")
|
||||
.HasColumnType("INTEGER")
|
||||
.HasColumnName("all_markings_gradient_direction");
|
||||
|
||||
b.Property<bool>("AllMarkingsGradientEnabled")
|
||||
.HasColumnType("INTEGER")
|
||||
.HasColumnName("all_markings_gradient_enabled");
|
||||
|
||||
b.Property<string>("AllMarkingsGradientSecondaryColor")
|
||||
.IsRequired()
|
||||
.HasColumnType("TEXT")
|
||||
.HasColumnName("all_markings_gradient_secondary_color");
|
||||
|
||||
b.Property<string>("BodyType")
|
||||
.IsRequired()
|
||||
.HasColumnType("TEXT")
|
||||
|
|
@ -864,18 +847,14 @@ namespace Content.Server.Database.Migrations.Sqlite
|
|||
.HasColumnType("TEXT")
|
||||
.HasColumnName("facial_hair_color");
|
||||
|
||||
b.Property<int>("FacialHairGradientDirection")
|
||||
b.Property<int>("FacialHairColorType")
|
||||
.HasColumnType("INTEGER")
|
||||
.HasColumnName("facial_hair_gradient_direction");
|
||||
.HasColumnName("facial_hair_color_type");
|
||||
|
||||
b.Property<bool>("FacialHairGradientEnabled")
|
||||
.HasColumnType("INTEGER")
|
||||
.HasColumnName("facial_hair_gradient_enabled");
|
||||
|
||||
b.Property<string>("FacialHairGradientSecondaryColor")
|
||||
b.Property<string>("FacialHairExtendedColor")
|
||||
.IsRequired()
|
||||
.HasColumnType("TEXT")
|
||||
.HasColumnName("facial_hair_gradient_secondary_color");
|
||||
.HasColumnName("facial_hair_extended_color");
|
||||
|
||||
b.Property<string>("FacialHairName")
|
||||
.IsRequired()
|
||||
|
|
@ -897,28 +876,20 @@ namespace Content.Server.Database.Migrations.Sqlite
|
|||
.HasColumnType("TEXT")
|
||||
.HasColumnName("hair_color");
|
||||
|
||||
b.Property<int>("HairGradientDirection")
|
||||
b.Property<int>("HairColorType")
|
||||
.HasColumnType("INTEGER")
|
||||
.HasColumnName("hair_gradient_direction");
|
||||
.HasColumnName("hair_color_type");
|
||||
|
||||
b.Property<bool>("HairGradientEnabled")
|
||||
.HasColumnType("INTEGER")
|
||||
.HasColumnName("hair_gradient_enabled");
|
||||
|
||||
b.Property<string>("HairGradientSecondaryColor")
|
||||
b.Property<string>("HairExtendedColor")
|
||||
.IsRequired()
|
||||
.HasColumnType("TEXT")
|
||||
.HasColumnName("hair_gradient_secondary_color");
|
||||
.HasColumnName("hair_extended_color");
|
||||
|
||||
b.Property<string>("HairName")
|
||||
.IsRequired()
|
||||
.HasColumnType("TEXT")
|
||||
.HasColumnName("hair_name");
|
||||
|
||||
b.Property<float>("Height")
|
||||
.HasColumnType("REAL")
|
||||
.HasColumnName("height");
|
||||
|
||||
b.Property<byte[]>("Markings")
|
||||
.HasColumnType("jsonb")
|
||||
.HasColumnName("markings");
|
||||
|
|
@ -959,10 +930,6 @@ namespace Content.Server.Database.Migrations.Sqlite
|
|||
.HasColumnType("TEXT")
|
||||
.HasColumnName("voice");
|
||||
|
||||
b.Property<float>("Width")
|
||||
.HasColumnType("REAL")
|
||||
.HasColumnName("width");
|
||||
|
||||
b.HasKey("Id")
|
||||
.HasName("PK_profile");
|
||||
|
||||
|
|
@ -0,0 +1,62 @@
|
|||
using Microsoft.EntityFrameworkCore.Migrations;
|
||||
|
||||
#nullable disable
|
||||
|
||||
namespace Content.Server.Database.Migrations.Sqlite
|
||||
{
|
||||
/// <inheritdoc />
|
||||
public partial class Gradient : Migration
|
||||
{
|
||||
/// <inheritdoc />
|
||||
protected override void Up(MigrationBuilder migrationBuilder)
|
||||
{
|
||||
migrationBuilder.AddColumn<int>(
|
||||
name: "facial_hair_color_type",
|
||||
table: "profile",
|
||||
type: "INTEGER",
|
||||
nullable: false,
|
||||
defaultValue: 0);
|
||||
|
||||
migrationBuilder.AddColumn<string>(
|
||||
name: "facial_hair_extended_color",
|
||||
table: "profile",
|
||||
type: "TEXT",
|
||||
nullable: false,
|
||||
defaultValue: "");
|
||||
|
||||
migrationBuilder.AddColumn<int>(
|
||||
name: "hair_color_type",
|
||||
table: "profile",
|
||||
type: "INTEGER",
|
||||
nullable: false,
|
||||
defaultValue: 0);
|
||||
|
||||
migrationBuilder.AddColumn<string>(
|
||||
name: "hair_extended_color",
|
||||
table: "profile",
|
||||
type: "TEXT",
|
||||
nullable: false,
|
||||
defaultValue: "");
|
||||
}
|
||||
|
||||
/// <inheritdoc />
|
||||
protected override void Down(MigrationBuilder migrationBuilder)
|
||||
{
|
||||
migrationBuilder.DropColumn(
|
||||
name: "facial_hair_color_type",
|
||||
table: "profile");
|
||||
|
||||
migrationBuilder.DropColumn(
|
||||
name: "facial_hair_extended_color",
|
||||
table: "profile");
|
||||
|
||||
migrationBuilder.DropColumn(
|
||||
name: "hair_color_type",
|
||||
table: "profile");
|
||||
|
||||
migrationBuilder.DropColumn(
|
||||
name: "hair_extended_color",
|
||||
table: "profile");
|
||||
}
|
||||
}
|
||||
}
|
||||
2264
Content.Server.Database/Migrations/Sqlite/20250926230050_GradientUpdate.Designer.cs
generated
Normal file
2264
Content.Server.Database/Migrations/Sqlite/20250926230050_GradientUpdate.Designer.cs
generated
Normal file
File diff suppressed because it is too large
Load diff
|
|
@ -5,11 +5,31 @@
|
|||
namespace Content.Server.Database.Migrations.Sqlite
|
||||
{
|
||||
/// <inheritdoc />
|
||||
public partial class GradientFields : Migration
|
||||
public partial class GradientUpdate : Migration
|
||||
{
|
||||
/// <inheritdoc />
|
||||
protected override void Up(MigrationBuilder migrationBuilder)
|
||||
{
|
||||
migrationBuilder.RenameColumn(
|
||||
name: "hair_extended_color",
|
||||
table: "profile",
|
||||
newName: "hair_gradient_secondary_color");
|
||||
|
||||
migrationBuilder.RenameColumn(
|
||||
name: "hair_color_type",
|
||||
table: "profile",
|
||||
newName: "hair_gradient_enabled");
|
||||
|
||||
migrationBuilder.RenameColumn(
|
||||
name: "facial_hair_extended_color",
|
||||
table: "profile",
|
||||
newName: "facial_hair_gradient_secondary_color");
|
||||
|
||||
migrationBuilder.RenameColumn(
|
||||
name: "facial_hair_color_type",
|
||||
table: "profile",
|
||||
newName: "hair_gradient_direction");
|
||||
|
||||
migrationBuilder.AddColumn<int>(
|
||||
name: "all_markings_gradient_direction",
|
||||
table: "profile",
|
||||
|
|
@ -29,7 +49,7 @@ namespace Content.Server.Database.Migrations.Sqlite
|
|||
table: "profile",
|
||||
type: "TEXT",
|
||||
nullable: false,
|
||||
defaultValue: "#FFFFFF");
|
||||
defaultValue: "");
|
||||
|
||||
migrationBuilder.AddColumn<int>(
|
||||
name: "facial_hair_gradient_direction",
|
||||
|
|
@ -44,34 +64,6 @@ namespace Content.Server.Database.Migrations.Sqlite
|
|||
type: "INTEGER",
|
||||
nullable: false,
|
||||
defaultValue: false);
|
||||
|
||||
migrationBuilder.AddColumn<string>(
|
||||
name: "facial_hair_gradient_secondary_color",
|
||||
table: "profile",
|
||||
type: "TEXT",
|
||||
nullable: false,
|
||||
defaultValue: "#FFFFFF");
|
||||
|
||||
migrationBuilder.AddColumn<int>(
|
||||
name: "hair_gradient_direction",
|
||||
table: "profile",
|
||||
type: "INTEGER",
|
||||
nullable: false,
|
||||
defaultValue: 0);
|
||||
|
||||
migrationBuilder.AddColumn<bool>(
|
||||
name: "hair_gradient_enabled",
|
||||
table: "profile",
|
||||
type: "INTEGER",
|
||||
nullable: false,
|
||||
defaultValue: false);
|
||||
|
||||
migrationBuilder.AddColumn<string>(
|
||||
name: "hair_gradient_secondary_color",
|
||||
table: "profile",
|
||||
type: "TEXT",
|
||||
nullable: false,
|
||||
defaultValue: "#FFFFFF");
|
||||
}
|
||||
|
||||
/// <inheritdoc />
|
||||
|
|
@ -97,21 +89,25 @@ namespace Content.Server.Database.Migrations.Sqlite
|
|||
name: "facial_hair_gradient_enabled",
|
||||
table: "profile");
|
||||
|
||||
migrationBuilder.DropColumn(
|
||||
name: "facial_hair_gradient_secondary_color",
|
||||
table: "profile");
|
||||
|
||||
migrationBuilder.DropColumn(
|
||||
name: "hair_gradient_direction",
|
||||
table: "profile");
|
||||
|
||||
migrationBuilder.DropColumn(
|
||||
name: "hair_gradient_enabled",
|
||||
table: "profile");
|
||||
|
||||
migrationBuilder.DropColumn(
|
||||
migrationBuilder.RenameColumn(
|
||||
name: "hair_gradient_secondary_color",
|
||||
table: "profile");
|
||||
table: "profile",
|
||||
newName: "hair_extended_color");
|
||||
|
||||
migrationBuilder.RenameColumn(
|
||||
name: "hair_gradient_enabled",
|
||||
table: "profile",
|
||||
newName: "hair_color_type");
|
||||
|
||||
migrationBuilder.RenameColumn(
|
||||
name: "hair_gradient_direction",
|
||||
table: "profile",
|
||||
newName: "facial_hair_color_type");
|
||||
|
||||
migrationBuilder.RenameColumn(
|
||||
name: "facial_hair_gradient_secondary_color",
|
||||
table: "profile",
|
||||
newName: "facial_hair_extended_color");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -207,9 +207,6 @@ namespace Content.Server.Database
|
|||
|
||||
private static HumanoidCharacterProfile ConvertProfiles(Profile profile)
|
||||
{
|
||||
// Debug logging for gradient load
|
||||
Console.WriteLine($"Sunrise: Loading gradient settings from DB - Hair: {profile.HairGradientEnabled}, FacialHair: {profile.FacialHairGradientEnabled}, AllMarkings: {profile.AllMarkingsGradientEnabled}");
|
||||
|
||||
var jobs = profile.Jobs.ToDictionary(j => new ProtoId<JobPrototype>(j.JobName), j => (JobPriority) j.Priority);
|
||||
var antags = profile.Antags.Select(a => new ProtoId<AntagPrototype>(a.AntagName));
|
||||
var traits = profile.Traits.Select(t => new ProtoId<TraitPrototype>(t.TraitName));
|
||||
|
|
@ -316,6 +313,8 @@ namespace Content.Server.Database
|
|||
{
|
||||
profile ??= new Profile();
|
||||
var appearance = (HumanoidCharacterAppearance) humanoid.CharacterAppearance;
|
||||
|
||||
// Debug logging for incoming appearance values
|
||||
List<string> markingStrings = new();
|
||||
foreach (var marking in appearance.Markings)
|
||||
{
|
||||
|
|
@ -352,7 +351,6 @@ namespace Content.Server.Database
|
|||
profile.AllMarkingsGradientDirection = appearance.AllMarkingsGradientDirection;
|
||||
|
||||
// Debug logging for gradient save
|
||||
Console.WriteLine($"Sunrise: Saving gradient settings - Hair: {appearance.HairGradientEnabled}, FacialHair: {appearance.FacialHairGradientEnabled}, AllMarkings: {appearance.AllMarkingsGradientEnabled}");
|
||||
profile.SpawnPriority = (int) humanoid.SpawnPriority;
|
||||
profile.Markings = markings;
|
||||
profile.Slot = slot;
|
||||
|
|
|
|||
|
|
@ -5,6 +5,7 @@ using System.Threading.Tasks;
|
|||
using Content.Server.Database;
|
||||
using Content.Shared.CCVar;
|
||||
using Content.Shared.Construction.Prototypes;
|
||||
using Content.Shared.Humanoid;
|
||||
using Content.Shared.Preferences;
|
||||
using Robust.Server.Player;
|
||||
using Robust.Shared.Configuration;
|
||||
|
|
|
|||
|
|
@ -99,18 +99,65 @@ public sealed partial class HumanoidCharacterAppearance : ICharacterAppearance,
|
|||
Height = height; //Sunrise
|
||||
}
|
||||
|
||||
public HumanoidCharacterAppearance(HumanoidCharacterAppearance other) :
|
||||
this(other.HairStyleId, other.HairColor, other.FacialHairStyleId, other.FacialHairColor, other.EyeColor, other.SkinColor, new(other.Markings), other.Width, other.Height)
|
||||
public HumanoidCharacterAppearance(string hairStyleId,
|
||||
Color hairColor,
|
||||
string facialHairStyleId,
|
||||
Color facialHairColor,
|
||||
Color eyeColor,
|
||||
Color skinColor,
|
||||
List<Marking> markings,
|
||||
float width,
|
||||
float height,
|
||||
bool hairGradientEnabled = false,
|
||||
Color hairGradientSecondaryColor = default,
|
||||
int hairGradientDirection = 0,
|
||||
bool facialHairGradientEnabled = false,
|
||||
Color facialHairGradientSecondaryColor = default,
|
||||
int facialHairGradientDirection = 0,
|
||||
bool allMarkingsGradientEnabled = false,
|
||||
Color allMarkingsGradientSecondaryColor = default,
|
||||
int allMarkingsGradientDirection = 0)
|
||||
{
|
||||
HairStyleId = hairStyleId;
|
||||
HairColor = ClampColor(hairColor);
|
||||
FacialHairStyleId = facialHairStyleId;
|
||||
FacialHairColor = ClampColor(facialHairColor);
|
||||
EyeColor = ClampColor(eyeColor);
|
||||
SkinColor = ClampColor(skinColor);
|
||||
Markings = markings;
|
||||
Width = width;
|
||||
Height = height;
|
||||
HairGradientEnabled = hairGradientEnabled;
|
||||
HairGradientSecondaryColor = hairGradientSecondaryColor == default ? Color.White : ClampColor(hairGradientSecondaryColor);
|
||||
HairGradientDirection = hairGradientDirection;
|
||||
FacialHairGradientEnabled = facialHairGradientEnabled;
|
||||
FacialHairGradientSecondaryColor = facialHairGradientSecondaryColor == default ? Color.White : ClampColor(facialHairGradientSecondaryColor);
|
||||
FacialHairGradientDirection = facialHairGradientDirection;
|
||||
AllMarkingsGradientEnabled = allMarkingsGradientEnabled;
|
||||
AllMarkingsGradientSecondaryColor = allMarkingsGradientSecondaryColor == default ? Color.White : ClampColor(allMarkingsGradientSecondaryColor);
|
||||
AllMarkingsGradientDirection = allMarkingsGradientDirection;
|
||||
}
|
||||
|
||||
public HumanoidCharacterAppearance(HumanoidCharacterAppearance other) :
|
||||
this(other.HairStyleId,
|
||||
other.HairColor,
|
||||
other.FacialHairStyleId,
|
||||
other.FacialHairColor,
|
||||
other.EyeColor,
|
||||
other.SkinColor,
|
||||
new(other.Markings),
|
||||
other.Width,
|
||||
other.Height,
|
||||
other.HairGradientEnabled,
|
||||
other.HairGradientSecondaryColor,
|
||||
other.HairGradientDirection,
|
||||
other.FacialHairGradientEnabled,
|
||||
other.FacialHairGradientSecondaryColor,
|
||||
other.FacialHairGradientDirection,
|
||||
other.AllMarkingsGradientEnabled,
|
||||
other.AllMarkingsGradientSecondaryColor,
|
||||
other.AllMarkingsGradientDirection)
|
||||
{
|
||||
HairGradientEnabled = other.HairGradientEnabled; //Sunrise start
|
||||
HairGradientSecondaryColor = ClampColor(other.HairGradientSecondaryColor);
|
||||
HairGradientDirection = other.HairGradientDirection;
|
||||
FacialHairGradientEnabled = other.FacialHairGradientEnabled;
|
||||
FacialHairGradientSecondaryColor = ClampColor(other.FacialHairGradientSecondaryColor);
|
||||
FacialHairGradientDirection = other.FacialHairGradientDirection;
|
||||
AllMarkingsGradientEnabled = other.AllMarkingsGradientEnabled;
|
||||
AllMarkingsGradientSecondaryColor = ClampColor(other.AllMarkingsGradientSecondaryColor);
|
||||
AllMarkingsGradientDirection = other.AllMarkingsGradientDirection; //Sunrise end
|
||||
}
|
||||
|
||||
public HumanoidCharacterAppearance WithHairStyleName(string newName)
|
||||
|
|
@ -363,7 +410,7 @@ public sealed partial class HumanoidCharacterAppearance : ICharacterAppearance,
|
|||
HairGradientDirection = HairGradientDirection,
|
||||
FacialHairGradientEnabled = FacialHairGradientEnabled,
|
||||
FacialHairGradientSecondaryColor = FacialHairGradientSecondaryColor,
|
||||
FacialHairGradientDirection = FacialHairGradientDirection,
|
||||
FacialHairGradientDirection = direction,
|
||||
AllMarkingsGradientEnabled = AllMarkingsGradientEnabled,
|
||||
AllMarkingsGradientSecondaryColor = AllMarkingsGradientSecondaryColor,
|
||||
AllMarkingsGradientDirection = direction
|
||||
|
|
@ -682,8 +729,20 @@ public sealed partial class HumanoidCharacterAppearance : ICharacterAppearance,
|
|||
var facialHairColor = ClampColor(appearance.FacialHairColor);
|
||||
var eyeColor = ClampColor(appearance.EyeColor);
|
||||
|
||||
var width = appearance.Width; //Sunrise
|
||||
var height = appearance.Height; //Sunrise
|
||||
var hairGradientEnabled = appearance.HairGradientEnabled;
|
||||
var hairGradientSecondaryColor = ClampColor(appearance.HairGradientSecondaryColor);
|
||||
var hairGradientDirection = appearance.HairGradientDirection;
|
||||
|
||||
var facialHairGradientEnabled = appearance.FacialHairGradientEnabled;
|
||||
var facialHairGradientSecondaryColor = ClampColor(appearance.FacialHairGradientSecondaryColor);
|
||||
var facialHairGradientDirection = appearance.FacialHairGradientDirection;
|
||||
|
||||
var allMarkingsGradientEnabled = appearance.AllMarkingsGradientEnabled;
|
||||
var allMarkingsGradientSecondaryColor = ClampColor(appearance.AllMarkingsGradientSecondaryColor);
|
||||
var allMarkingsGradientDirection = appearance.AllMarkingsGradientDirection;
|
||||
|
||||
var width = appearance.Width;
|
||||
var height = appearance.Height;
|
||||
|
||||
var proto = IoCManager.Resolve<IPrototypeManager>();
|
||||
var markingManager = IoCManager.Resolve<MarkingManager>();
|
||||
|
|
@ -745,7 +804,16 @@ public sealed partial class HumanoidCharacterAppearance : ICharacterAppearance,
|
|||
skinColor,
|
||||
markingSet.GetForwardEnumerator().ToList(),
|
||||
width,
|
||||
height);
|
||||
height,
|
||||
hairGradientEnabled,
|
||||
hairGradientSecondaryColor,
|
||||
hairGradientDirection,
|
||||
facialHairGradientEnabled,
|
||||
facialHairGradientSecondaryColor,
|
||||
facialHairGradientDirection,
|
||||
allMarkingsGradientEnabled,
|
||||
allMarkingsGradientSecondaryColor,
|
||||
allMarkingsGradientDirection);
|
||||
}
|
||||
|
||||
public bool MemberwiseEquals(ICharacterAppearance maybeOther)
|
||||
|
|
|
|||
|
|
@ -27,8 +27,6 @@ ent-ClothingOuterVestWebElite = элитный сетчатый жилет
|
|||
ent-ClothingOuterVestWebEliteBiocode = { ent-ClothingOuterVestWebElite }
|
||||
.suffix = БИОКОД
|
||||
.desc = { ent-ClothingOuterVestWebElite.desc }
|
||||
ent-ClothingOuterVestWebElite = элитный тактический жилет
|
||||
.desc = Синтетический бронежилет. У этого есть дополнительные ремни и теплостойкие волокна.
|
||||
ent-ClothingOuterVestWebMerc = тактический жилет наёмника
|
||||
.desc = Высококачественный бронежилет из прочного синтетического материала. Он удивительно гибкий и лёгкий, несмотря на внушительную броню.
|
||||
ent-ClothingOuterArmorRaid = мародерский бронированный костюм
|
||||
|
|
|
|||
|
|
@ -57,9 +57,7 @@
|
|||
parent: [BaseSyndicateContraband, FireAxe]
|
||||
description: Why fight fire with an axe when you can fight with fire and axe? Now featuring rugged rubberized handle!
|
||||
components:
|
||||
- type: MeleeWeapon
|
||||
wideAnimationRotation: 90
|
||||
#Sunrise-start
|
||||
#Sunrise-start
|
||||
- type: IgniteOnMeleeHit
|
||||
fireStacks: 3
|
||||
- type: MeleeWeapon
|
||||
|
|
|
|||
|
|
@ -71,16 +71,3 @@
|
|||
- type: Biocode
|
||||
factions:
|
||||
- Syndicate
|
||||
|
||||
- type: entity
|
||||
parent: WeaponPistolDeagle
|
||||
id: WeaponPistolDeagleBiocode
|
||||
suffix: BIOCODE
|
||||
components:
|
||||
- type: FactionWeaponBlocker
|
||||
factions:
|
||||
- Syndicate
|
||||
alertText: Данное оружие биокодировано. Вы не можете его использовать.
|
||||
- type: Biocode
|
||||
factions:
|
||||
- Syndicate
|
||||
|
|
|
|||
|
|
@ -1,7 +0,0 @@
|
|||
set PDIR=%~dp0
|
||||
cd %PDIR%Bin\Content.Server
|
||||
start Content.Server.exe
|
||||
cd %PDIR%Bin\Content.Client
|
||||
start Content.Client.exe
|
||||
cd %PDIR%
|
||||
set PDIR=
|
||||
Loading…
Add table
Reference in a new issue