Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@

namespace BeatLeader.Replayer.Emulation {
public class BeatAvatarLoader : MonoBehaviour {

#region Setup

[Inject] private readonly AvatarSystemCollection _avatarSystemCollection = null!;
Expand Down Expand Up @@ -40,10 +41,8 @@ private void Awake() {

public BeatAvatarController CreateGameplayAvatar(Transform? parent = null) {
var avatar = CreateAvatar(parent, 1f);
// For camera2 support
foreach (var item in avatar.transform.GetChildren(false)) {
item.gameObject.layer = 10;
}
ApplyCam2Shenanigans(avatar);

avatar.GetComponent<Animator>().enabled = false;
return avatar.AddComponent<BeatAvatarController>();
}
Expand All @@ -61,19 +60,32 @@ private GameObject CreateAvatar(Transform? parent, float size) {
foreach (Transform child in trans) {
child.localScale = Vector3.one;
}

trans.localPosition = Vector3.zero;
trans.localScale = size * Vector3.one;
trans.localRotation = Quaternion.identity;
_container.InjectGameObject(avatar);

// Forcibly enable to initiate Awake
avatar.SetActive(true);
avatar.name = "AnimatedAvatar (BL)";

return avatar;
}

private static readonly int cullModeProp = Shader.PropertyToID("_CullMode");

private static void ApplyCam2Shenanigans(GameObject avatar) {
// For camera2 support
foreach (var item in avatar.transform.GetChildren(false)) {
if (item.name == "Eyes" && item.GetComponent<SpriteRenderer>() is { } renderer) {
renderer.material.SetInt(cullModeProp, 2);
}

item.gameObject.layer = 10;
}
}

#endregion

#region CreateEditor
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ internal class ReplayerSettingsPanel : ReactiveComponent {
#region Setup

public void Setup(
ReplayerSettings settings,
ReplayLaunchData launchData,
IBeatmapTimeController timeController,
IReplayFinishController finishController,
ICameraController cameraController,
Expand All @@ -22,10 +22,14 @@ public void Setup(
IReplayWatermark watermark,
bool useAlternativeBlur
) {
var settings = launchData.Settings;

_quickSettingsPanel.Setup(timeController);
_quickSettingsPanel.SetShown(settings.UISettings.QuickSettingsEnabled, true);

_cameraView.Setup(cameraController, settings.CameraSettings);
var cameraContr = launchData.DisableBuiltinCamera ? null : cameraController;
_cameraView.Setup(cameraContr, settings.CameraSettings);

_uiView.Setup(settings.UISettings, _quickSettingsPanel, layoutEditor, timeline, watermark);
_otherView.Setup(timeController, finishController);

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -56,7 +56,7 @@ bool useAlternativeBlur
launchData.Settings.UISettings
);
_settingsPanel.Setup(
launchData.Settings,
launchData,
timeController,
finishController,
cameraController,
Expand Down
Loading