Merge remote-tracking branch 'refs/remotes/wizards/master'
This commit is contained in:
commit
8a6ea6ac33
11 changed files with 225 additions and 78 deletions
|
|
@ -1,50 +1,129 @@
|
|||
<controls:FancyWindow xmlns="https://spacestation14.io"
|
||||
xmlns:gfx="clr-namespace:Robust.Client.Graphics;assembly=Robust.Client"
|
||||
xmlns:controls="clr-namespace:Content.Client.UserInterface.Controls"
|
||||
xmlns:ui="clr-namespace:Content.Client.ParticleAccelerator.UI"
|
||||
xmlns:customControls="clr-namespace:Content.Client.Administration.UI.CustomControls"
|
||||
Title="{Loc 'particle-accelerator-control-menu-device-version-label'}"
|
||||
MinSize="420 320"
|
||||
SetSize="420 320">
|
||||
<BoxContainer Orientation="Vertical" VerticalExpand="True" Margin="0 10 0 0">
|
||||
<BoxContainer Orientation="Horizontal" VerticalExpand="True">
|
||||
<BoxContainer Orientation="Vertical" HorizontalExpand="True" VerticalExpand="True" Margin="10 0 10 5">
|
||||
<BoxContainer Orientation="Horizontal">
|
||||
<RichTextLabel Name="StatusLabel" HorizontalExpand="True"/>
|
||||
<RichTextLabel Name="StatusStateLabel"/>
|
||||
xmlns:gfx="clr-namespace:Robust.Client.Graphics;assembly=Robust.Client"
|
||||
xmlns:controls="clr-namespace:Content.Client.UserInterface.Controls"
|
||||
xmlns:ui="clr-namespace:Content.Client.ParticleAccelerator.UI"
|
||||
Title="{Loc 'particle-accelerator-control-menu-device-version-label'}"
|
||||
MinSize="320 120">
|
||||
|
||||
<!-- Main Container -->
|
||||
<BoxContainer Orientation="Vertical"
|
||||
VerticalExpand="True">
|
||||
|
||||
<!-- Sub-Main container -->
|
||||
<BoxContainer Orientation="Horizontal"
|
||||
VerticalExpand="True"
|
||||
HorizontalExpand="True">
|
||||
|
||||
<!-- Info part -->
|
||||
<BoxContainer Orientation="Vertical"
|
||||
HorizontalExpand="True"
|
||||
Margin="8">
|
||||
|
||||
<!-- Info -->
|
||||
<BoxContainer Orientation="Vertical"
|
||||
SeparationOverride="4">
|
||||
|
||||
<!-- Status -->
|
||||
<BoxContainer Orientation="Horizontal">
|
||||
<RichTextLabel Name="StatusLabel" HorizontalExpand="True"/>
|
||||
<Control MinWidth="8"/>
|
||||
<RichTextLabel Name="StatusStateLabel"/>
|
||||
</BoxContainer>
|
||||
|
||||
<!-- Power -->
|
||||
<BoxContainer Orientation="Horizontal">
|
||||
<RichTextLabel Name="PowerLabel"
|
||||
HorizontalExpand="True"
|
||||
VerticalAlignment="Center"/>
|
||||
|
||||
<Control MinWidth="8"/>
|
||||
|
||||
<Button Name="OffButton"
|
||||
ToggleMode="False"
|
||||
Text="{Loc 'particle-accelerator-control-menu-off-button'}"
|
||||
StyleClasses="OpenRight"/>
|
||||
|
||||
<Button Name="OnButton"
|
||||
ToggleMode="False"
|
||||
Text="{Loc 'particle-accelerator-control-menu-on-button'}"
|
||||
StyleClasses="OpenLeft"/>
|
||||
</BoxContainer>
|
||||
|
||||
<!-- Strenght -->
|
||||
<BoxContainer Orientation="Horizontal">
|
||||
<RichTextLabel Name="StrengthLabel"
|
||||
HorizontalExpand="True"
|
||||
HorizontalAlignment="Left"
|
||||
VerticalAlignment="Center"/>
|
||||
|
||||
<Control MinWidth="8"/>
|
||||
|
||||
<SpinBox Name="StateSpinBox" Value="0"/>
|
||||
</BoxContainer>
|
||||
|
||||
<!-- Power -->
|
||||
<BoxContainer Orientation="Horizontal">
|
||||
<RichTextLabel Name="DrawLabel" HorizontalExpand="True"/>
|
||||
<Control MinWidth="8"/>
|
||||
<RichTextLabel Name="DrawValueLabel"/>
|
||||
</BoxContainer>
|
||||
</BoxContainer>
|
||||
<Control MinHeight="5"/>
|
||||
<BoxContainer Orientation="Horizontal">
|
||||
<RichTextLabel Name="PowerLabel" Margin="0 0 20 0" HorizontalExpand="True" VerticalAlignment="Center"/>
|
||||
<Button Name="OffButton" ToggleMode="False" Text="{Loc 'particle-accelerator-control-menu-off-button'}" StyleClasses="OpenRight"/>
|
||||
<Button Name="OnButton" ToggleMode="False" Text="{Loc 'particle-accelerator-control-menu-on-button'}" StyleClasses="OpenLeft"/>
|
||||
|
||||
<Control MinHeight="8" VerticalExpand="True"/> <!-- Filler -->
|
||||
|
||||
<!-- Alarm -->
|
||||
<BoxContainer Name="AlarmControl"
|
||||
Orientation="Vertical"
|
||||
VerticalAlignment="Center"
|
||||
Visible="False">
|
||||
|
||||
<controls:StripeBack Margin="-8 0">
|
||||
<BoxContainer Orientation="Vertical">
|
||||
<RichTextLabel Name="BigAlarmLabel"
|
||||
HorizontalAlignment="Center"/>
|
||||
|
||||
<RichTextLabel Name="BigAlarmLabelTwo"
|
||||
HorizontalAlignment="Center"/>
|
||||
</BoxContainer>
|
||||
</controls:StripeBack>
|
||||
|
||||
<Label Text="{Loc 'particle-accelerator-control-menu-service-manual-reference'}"
|
||||
HorizontalAlignment="Center"
|
||||
StyleClasses="LabelSubText"/>
|
||||
</BoxContainer>
|
||||
<Control MinHeight="5"/>
|
||||
<BoxContainer Orientation="Horizontal">
|
||||
<RichTextLabel Name="StrengthLabel" Margin="0 0 20 0" HorizontalExpand="True" HorizontalAlignment="Left" VerticalAlignment="Center"/>
|
||||
<SpinBox Name="StateSpinBox" Value="0"/>
|
||||
</BoxContainer>
|
||||
<Control MinHeight="5"/>
|
||||
<BoxContainer Orientation="Horizontal">
|
||||
<RichTextLabel Name="DrawLabel" HorizontalExpand="True"/>
|
||||
<RichTextLabel Name="DrawValueLabel"/>
|
||||
</BoxContainer>
|
||||
<Control MinHeight="10" VerticalExpand="True"/>
|
||||
<BoxContainer Name="AlarmControl" Orientation="Vertical" VerticalAlignment="Center" Visible="False">
|
||||
<RichTextLabel Name="BigAlarmLabel" HorizontalAlignment="Center"/>
|
||||
<RichTextLabel Name="BigAlarmLabelTwo" HorizontalAlignment="Center"/>
|
||||
<Label Text="{Loc 'particle-accelerator-control-menu-service-manual-reference'}" HorizontalAlignment="Center" StyleClasses="LabelSubText"/>
|
||||
</BoxContainer>
|
||||
<Control MinHeight="10" VerticalExpand="True"/>
|
||||
</BoxContainer>
|
||||
<customControls:VSeparator Margin="0 0 0 10"/>
|
||||
<BoxContainer Orientation="Vertical" Margin="20 0 20 0" VerticalAlignment="Center">
|
||||
<PanelContainer Name="BackPanel" HorizontalAlignment="Center">
|
||||
|
||||
<PanelContainer StyleClasses="LowDivider" Margin="0 -8" HorizontalAlignment="Right"/>
|
||||
|
||||
<!-- PA Visual part -->
|
||||
<BoxContainer Orientation="Vertical"
|
||||
VerticalAlignment="Center"
|
||||
Margin="8">
|
||||
|
||||
<PanelContainer Name="BackPanel"
|
||||
HorizontalAlignment="Center">
|
||||
|
||||
<PanelContainer.PanelOverride>
|
||||
<gfx:StyleBoxTexture Modulate="#202023" PatchMarginBottom="10" PatchMarginLeft="10" PatchMarginRight="10" PatchMarginTop="10"/>
|
||||
<gfx:StyleBoxTexture Modulate="#202023"
|
||||
PatchMarginBottom="8"
|
||||
PatchMarginLeft="8"
|
||||
PatchMarginRight="8"
|
||||
PatchMarginTop="8"/>
|
||||
</PanelContainer.PanelOverride>
|
||||
<BoxContainer Orientation="Vertical" HorizontalExpand="True" HorizontalAlignment="Center" VerticalExpand="True">
|
||||
<GridContainer Columns="3" VSeparationOverride="0" HSeparationOverride="0" HorizontalAlignment="Center">
|
||||
|
||||
<BoxContainer Orientation="Vertical"
|
||||
SeparationOverride="6"
|
||||
VerticalExpand="True"
|
||||
VerticalAlignment="Stretch"
|
||||
HorizontalExpand="True"
|
||||
HorizontalAlignment="Center">
|
||||
|
||||
<!-- PA Visualisation -->
|
||||
<GridContainer Columns="3"
|
||||
VSeparationOverride="0"
|
||||
HSeparationOverride="0"
|
||||
HorizontalAlignment="Center">
|
||||
|
||||
<Control/>
|
||||
<ui:PASegmentControl Name="EndCapTexture" BaseState="end_cap"/>
|
||||
<Control/>
|
||||
|
|
@ -58,17 +137,47 @@
|
|||
<ui:PASegmentControl Name="EmitterForeTexture" BaseState="emitter_fore"/>
|
||||
<ui:PASegmentControl Name="EmitterPortTexture" BaseState="emitter_port"/>
|
||||
</GridContainer>
|
||||
<Control MinHeight="5"/>
|
||||
<Button Name="ScanButton" Text="{Loc 'particle-accelerator-control-menu-scan-parts-button'}" HorizontalAlignment="Center"/>
|
||||
|
||||
<Button Name="ScanButton"
|
||||
Text="{Loc 'particle-accelerator-control-menu-scan-parts-button'}"
|
||||
HorizontalAlignment="Center"/>
|
||||
</BoxContainer>
|
||||
</PanelContainer>
|
||||
</BoxContainer>
|
||||
</BoxContainer>
|
||||
<controls:StripeBack>
|
||||
<Label Text="{Loc 'particle-accelerator-control-menu-check-containment-field-warning'}" HorizontalAlignment="Center" StyleClasses="LabelSubText" Margin="4 4 0 4"/>
|
||||
</controls:StripeBack>
|
||||
<BoxContainer Orientation="Horizontal" Margin="12 0 0 0">
|
||||
<Label Text="{Loc 'particle-accelerator-control-menu-foo-bar-baz'}" StyleClasses="LabelSubText"/>
|
||||
|
||||
<!-- Footer -->
|
||||
<BoxContainer Orientation="Vertical"
|
||||
VerticalAlignment="Bottom">
|
||||
|
||||
<controls:StripeBack>
|
||||
<Label Text="{Loc 'particle-accelerator-control-menu-check-containment-field-warning'}"
|
||||
HorizontalAlignment="Center"
|
||||
StyleClasses="LabelSubText"
|
||||
Margin="0 4"/>
|
||||
</controls:StripeBack>
|
||||
|
||||
<BoxContainer Orientation="Horizontal"
|
||||
Margin="12 0 6 2"
|
||||
VerticalAlignment="Bottom">
|
||||
|
||||
<!-- Footer title -->
|
||||
<Label Text="{Loc 'particle-accelerator-control-menu-flavor-left'}"
|
||||
StyleClasses="WindowFooterText" />
|
||||
|
||||
<!-- Version -->
|
||||
<Label Text="{Loc 'particle-accelerator-control-menu-flavor-right'}"
|
||||
StyleClasses="WindowFooterText"
|
||||
HorizontalAlignment="Right"
|
||||
HorizontalExpand="True"
|
||||
Margin="0 0 4 0" />
|
||||
|
||||
<TextureRect StyleClasses="NTLogoDark"
|
||||
Stretch="KeepAspectCentered"
|
||||
VerticalAlignment="Center"
|
||||
HorizontalAlignment="Right"
|
||||
SetSize="19 19"/>
|
||||
</BoxContainer>
|
||||
</BoxContainer>
|
||||
</BoxContainer>
|
||||
</controls:FancyWindow>
|
||||
|
|
|
|||
|
|
@ -208,6 +208,8 @@ public sealed partial class BanManager : IBanManager, IPostInjectInit
|
|||
null);
|
||||
|
||||
await _db.AddServerBanAsync(banDef);
|
||||
if (_cfg.GetCVar(CCVars.ServerBanResetLastReadRules) && target != null)
|
||||
await _db.SetLastReadRules(target.Value, null); // Reset their last read rules. They probably need a refresher!
|
||||
var adminName = banningAdmin == null
|
||||
? Loc.GetString("system-user")
|
||||
: (await _db.GetPlayerRecordByUserId(banningAdmin.Value))?.LastSeenUserName ?? Loc.GetString("system-user");
|
||||
|
|
|
|||
|
|
@ -1120,7 +1120,7 @@ INSERT INTO player_round (players_id, rounds_id) VALUES ({players[player]}, {id}
|
|||
.SingleOrDefaultAsync());
|
||||
}
|
||||
|
||||
public async Task SetLastReadRules(NetUserId player, DateTimeOffset date)
|
||||
public async Task SetLastReadRules(NetUserId player, DateTimeOffset? date)
|
||||
{
|
||||
await using var db = await GetDb();
|
||||
|
||||
|
|
@ -1130,7 +1130,7 @@ INSERT INTO player_round (players_id, rounds_id) VALUES ({players[player]}, {id}
|
|||
return;
|
||||
}
|
||||
|
||||
dbPlayer.LastReadRules = date.UtcDateTime;
|
||||
dbPlayer.LastReadRules = date?.UtcDateTime;
|
||||
await db.DbContext.SaveChangesAsync();
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -282,7 +282,7 @@ namespace Content.Server.Database
|
|||
#region Rules
|
||||
|
||||
Task<DateTimeOffset?> GetLastReadRules(NetUserId player);
|
||||
Task SetLastReadRules(NetUserId player, DateTimeOffset time);
|
||||
Task SetLastReadRules(NetUserId player, DateTimeOffset? time);
|
||||
|
||||
#endregion
|
||||
|
||||
|
|
@ -830,7 +830,7 @@ namespace Content.Server.Database
|
|||
return RunDbCommand(() => _db.GetLastReadRules(player));
|
||||
}
|
||||
|
||||
public Task SetLastReadRules(NetUserId player, DateTimeOffset time)
|
||||
public Task SetLastReadRules(NetUserId player, DateTimeOffset? time)
|
||||
{
|
||||
DbWriteOpsMetric.Inc();
|
||||
return RunDbCommand(() => _db.SetLastReadRules(player, time));
|
||||
|
|
|
|||
|
|
@ -15,7 +15,6 @@ public sealed partial class ExplosionReactionEffect : EntityEffect
|
|||
/// The type of explosion. Determines damage types and tile break chance scaling.
|
||||
/// </summary>
|
||||
[DataField(required: true, customTypeSerializer: typeof(PrototypeIdSerializer<ExplosionPrototype>))]
|
||||
[JsonIgnore]
|
||||
public string ExplosionType = default!;
|
||||
|
||||
/// <summary>
|
||||
|
|
@ -23,14 +22,12 @@ public sealed partial class ExplosionReactionEffect : EntityEffect
|
|||
/// chance.
|
||||
/// </summary>
|
||||
[DataField]
|
||||
[JsonIgnore]
|
||||
public float MaxIntensity = 5;
|
||||
|
||||
/// <summary>
|
||||
/// How quickly intensity drops off as you move away from the epicenter
|
||||
/// </summary>
|
||||
[DataField]
|
||||
[JsonIgnore]
|
||||
public float IntensitySlope = 1;
|
||||
|
||||
/// <summary>
|
||||
|
|
@ -41,15 +38,20 @@ public sealed partial class ExplosionReactionEffect : EntityEffect
|
|||
/// A slope of 1 and MaxTotalIntensity of 100 corresponds to a radius of around 4.5 tiles.
|
||||
/// </remarks>
|
||||
[DataField]
|
||||
[JsonIgnore]
|
||||
public float MaxTotalIntensity = 100;
|
||||
|
||||
/// <summary>
|
||||
/// The intensity of the explosion per unit reaction.
|
||||
/// </summary>
|
||||
[DataField]
|
||||
[JsonIgnore]
|
||||
public float IntensityPerUnit = 1;
|
||||
|
||||
/// <summary>
|
||||
/// Factor used to scale the explosion intensity when calculating tile break chances. Allows for stronger
|
||||
/// explosives that don't space tiles, without having to create a new explosion-type prototype.
|
||||
/// </summary>
|
||||
[DataField]
|
||||
public float TileBreakScale = 1f;
|
||||
|
||||
public override bool ShouldLog => true;
|
||||
|
||||
|
|
@ -72,6 +74,7 @@ public sealed partial class ExplosionReactionEffect : EntityEffect
|
|||
ExplosionType,
|
||||
intensity,
|
||||
IntensitySlope,
|
||||
MaxIntensity);
|
||||
MaxIntensity,
|
||||
TileBreakScale);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -34,7 +34,7 @@ public sealed class RulesManager
|
|||
{
|
||||
PopupTime = _cfg.GetCVar(CCVars.RulesWaitTime),
|
||||
CoreRules = _cfg.GetCVar(CCVars.RulesFile),
|
||||
ShouldShowRules = !isLocalhost && !hasCooldown
|
||||
ShouldShowRules = !isLocalhost && !hasCooldown,
|
||||
};
|
||||
_netManager.ServerSendMessage(showRulesMessage, e.Channel);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -95,6 +95,12 @@ public sealed partial class CCVars
|
|||
public static readonly CVarDef<bool> ServerBanErasePlayer =
|
||||
CVarDef.Create("admin.server_ban_erase_player", false, CVar.ARCHIVE | CVar.SERVER | CVar.REPLICATED);
|
||||
|
||||
/// <summary>
|
||||
/// If true, will reset the last time the player has read the rules. This will mean on their next login they will be shown the rules again.
|
||||
/// </summary>
|
||||
public static readonly CVarDef<bool> ServerBanResetLastReadRules =
|
||||
CVarDef.Create("admin.server_ban_reset_last_read_rules", true, CVar.ARCHIVE | CVar.SERVER);
|
||||
|
||||
/// <summary>
|
||||
/// Minimum players sharing a connection required to create an alert. -1 to disable the alert.
|
||||
/// </summary>
|
||||
|
|
|
|||
|
|
@ -1,18 +1,4 @@
|
|||
Entries:
|
||||
- author: lzk228
|
||||
changes:
|
||||
- message: Command intercom now reinforced the same way as the security one.
|
||||
type: Tweak
|
||||
id: 7375
|
||||
time: '2024-09-14T20:40:38.0000000+00:00'
|
||||
url: https://github.com/space-wizards/space-station-14/pull/32169
|
||||
- author: de0rix
|
||||
changes:
|
||||
- message: Animals in critical state now all have proper sprites.
|
||||
type: Fix
|
||||
id: 7376
|
||||
time: '2024-09-15T01:53:58.0000000+00:00'
|
||||
url: https://github.com/space-wizards/space-station-14/pull/32175
|
||||
- author: notafet
|
||||
changes:
|
||||
- message: Pressure and volume pumps now require power to operate.
|
||||
|
|
@ -3901,3 +3887,17 @@
|
|||
id: 7874
|
||||
time: '2025-01-30T04:45:56.0000000+00:00'
|
||||
url: https://github.com/space-wizards/space-station-14/pull/34721
|
||||
- author: Velken
|
||||
changes:
|
||||
- message: Mixing opposite types of lizard juices now has explosive consequences.
|
||||
type: Add
|
||||
id: 7875
|
||||
time: '2025-01-30T11:34:32.0000000+00:00'
|
||||
url: https://github.com/space-wizards/space-station-14/pull/34730
|
||||
- author: SpaceRox1244
|
||||
changes:
|
||||
- message: Massive scrap can now fit in bags of holding.
|
||||
type: Tweak
|
||||
id: 7876
|
||||
time: '2025-01-30T12:06:41.0000000+00:00'
|
||||
url: https://github.com/space-wizards/space-station-14/pull/33454
|
||||
|
|
|
|||
|
|
@ -8,7 +8,6 @@ particle-accelerator-control-menu-alarm-control-1 = [bold][color=red]PARTICLE ST
|
|||
particle-accelerator-control-menu-alarm-control-2 = [bold][color=red]LIMITER FAILURE[/bold][/color]
|
||||
particle-accelerator-control-menu-scan-parts-button = Scan Parts
|
||||
particle-accelerator-control-menu-check-containment-field-warning = Ensure containment field is active before operation
|
||||
particle-accelerator-control-menu-foo-bar-baz = FOO-BAR-BAZ
|
||||
particle-accelerator-control-menu-status-label = [bold]Status:[/bold]
|
||||
particle-accelerator-control-menu-status-unknown = [font="Monospace"][color=red]Unknown[/color][/bold]
|
||||
particle-accelerator-control-menu-status-operational = [font="Monospace"][color=green]Operational[/color][/bold]
|
||||
|
|
@ -16,6 +15,8 @@ particle-accelerator-control-menu-status-incomplete = [font="Monospace"][color=r
|
|||
particle-accelerator-control-menu-draw = [bold]Draw:[/bold]
|
||||
particle-accelerator-control-menu-draw-value = [font="Monospace"]{$watts}/{$lastReceive}[/font]
|
||||
particle-accelerator-control-menu-draw-not-available = [font="Monospace"][color=gray]N/A[/color][/font]
|
||||
particle-accelerator-control-menu-flavor-left = Please keep the clown away from this console!
|
||||
particle-accelerator-control-menu-flavor-right = v 1.6
|
||||
|
||||
particle-accelerator-radio-message-on = PA power has been switched on.
|
||||
particle-accelerator-radio-message-off = PA power has been switched off.
|
||||
|
|
|
|||
|
|
@ -77,7 +77,9 @@
|
|||
- state: metal-1
|
||||
map: [ "base" ]
|
||||
- type: Item
|
||||
size: Ginormous
|
||||
size: Large
|
||||
shape:
|
||||
- 0,0,4,4 # 5x5
|
||||
heldPrefix: metal
|
||||
- type: MultiHandedItem
|
||||
- type: RandomSprite
|
||||
|
|
@ -135,7 +137,9 @@
|
|||
junk-airlock-1: ""
|
||||
junk-airlock-2: ""
|
||||
- type: Item
|
||||
size: Ginormous
|
||||
size: Large
|
||||
shape:
|
||||
- 0,0,4,4 # 5x5
|
||||
heldPrefix: "airlock"
|
||||
- type: MultiHandedItem
|
||||
- type: PhysicalComposition
|
||||
|
|
@ -273,7 +277,9 @@
|
|||
layers:
|
||||
- state: junk-firelock-1
|
||||
- type: Item
|
||||
size: Ginormous
|
||||
size: Large
|
||||
shape:
|
||||
- 0,0,4,4 # 5x5
|
||||
heldPrefix: firelock-1
|
||||
- type: MultiHandedItem
|
||||
- type: PhysicalComposition
|
||||
|
|
@ -290,7 +296,9 @@
|
|||
layers:
|
||||
- state: junk-firelock-2
|
||||
- type: Item
|
||||
size: Ginormous
|
||||
size: Large
|
||||
shape:
|
||||
- 0,0,4,4 # 5x5
|
||||
heldPrefix: firelock-2
|
||||
- type: MultiHandedItem
|
||||
- type: PhysicalComposition
|
||||
|
|
|
|||
|
|
@ -381,3 +381,21 @@
|
|||
conditions:
|
||||
- !type:ReagentThreshold
|
||||
min: 50
|
||||
|
||||
- type: reaction
|
||||
id: WehHewExplosion
|
||||
impact: High
|
||||
priority: 20
|
||||
reactants:
|
||||
JuiceThatMakesYouWeh:
|
||||
amount: 1
|
||||
JuiceThatMakesYouHew:
|
||||
amount: 1
|
||||
effects:
|
||||
- !type:ExplosionReactionEffect
|
||||
explosionType: Radioactive
|
||||
maxIntensity: 200
|
||||
intensityPerUnit: 2
|
||||
intensitySlope: 1
|
||||
maxTotalIntensity: 250
|
||||
tileBreakScale: 0.00001
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue