Compare commits

...

12 Commits

Author SHA1 Message Date
34c125e6bb no message 2026-02-15 01:14:09 -08:00
66905c9b53 Overhaul 2026-02-15 01:06:46 -08:00
Pal
a1f4a29eb3 Mask of Zeal, Mask Placeholder, Health Item Placeholder, VT pickup animation added. Temp Environment added to Final Floor. 2026-02-15 00:57:19 -08:00
a6ea1b1873 laptop 2026-02-14 19:26:33 -08:00
Pal
47ceb2f613 Remove E, fix UI, Altar scale better 2026-02-14 16:49:16 -08:00
bf6b0d50c3 Additional in progress changes 2026-02-13 23:39:49 -08:00
c7603a163f Revert "update"
This reverts commit fe0241ac88.
2026-02-13 16:33:44 -08:00
a20c80d922 Remaining changes 2026-02-13 16:33:30 -08:00
e14007b7f4 Merge branch 'main' into item_changes 2026-02-13 16:24:40 -08:00
b17c134c9a Add debug info folder that got filtered by git 2026-02-13 16:12:34 -08:00
Pal
638946d23a UI Mockup Ver.2 With Correct Transparencies 2026-02-13 15:48:04 -08:00
Pal
b56668dcbe 3D Render Icons Wave 1 Added 2026-02-13 14:44:03 -08:00
123 changed files with 2882 additions and 798 deletions

View File

@@ -16,6 +16,8 @@ public interface IExperiencePointsComponent : IEntityComponent
public void Gain(int baseExpGain); public void Gain(int baseExpGain);
public void GainUnmodified(int flateRateExpGain);
public void LevelUp(); public void LevelUp();
public event Action PlayerLevelUp; public event Action PlayerLevelUp;

View File

@@ -51,6 +51,16 @@ public class ExperiencePointsComponent : IExperiencePointsComponent
var cappedAmount = Math.Min(baseExpGain + _currentExp.Value, _expToNextLevel.Value); var cappedAmount = Math.Min(baseExpGain + _currentExp.Value, _expToNextLevel.Value);
_currentExp.OnNext(cappedAmount); _currentExp.OnNext(cappedAmount);
} }
public void GainUnmodified(int flatRateExp)
{
var newCurrentExpTotal = flatRateExp + _currentExp.Value;
while (flatRateExp + _currentExp.Value >= _expToNextLevel.Value)
LevelUp();
var cappedAmount = Math.Min(flatRateExp + _currentExp.Value, _expToNextLevel.Value);
_currentExp.OnNext(cappedAmount);
}
public void ModifyExpGainRate(double newRate) => _expGainRate.OnNext(newRate); public void ModifyExpGainRate(double newRate) => _expGainRate.OnNext(newRate);
public void LevelUp() public void LevelUp()

View File

@@ -146,7 +146,7 @@ public partial class App : Node, IApp
}) })
.Handle((in AppLogic.Output.SetupGameScene _) => .Handle((in AppLogic.Output.SetupGameScene _) =>
{ {
LoadingScreen.Show(); LoadingScreen.ShowLoadingScreen();
LoadGame(GAME_SCENE_PATH); LoadGame(GAME_SCENE_PATH);
}) })
.Handle((in AppLogic.Output.ShowMainMenu _) => .Handle((in AppLogic.Output.ShowMainMenu _) =>
@@ -155,7 +155,7 @@ public partial class App : Node, IApp
}) })
.Handle((in AppLogic.Output.CloseGame _) => .Handle((in AppLogic.Output.CloseGame _) =>
{ {
LoadingScreen.Hide(); LoadingScreen.HideLoadingScreen();
_game.GameExitRequested -= GameExitRequested; _game.GameExitRequested -= GameExitRequested;
MainMenu.StartGameButton.GrabFocus(); MainMenu.StartGameButton.GrabFocus();
_game.CallDeferred(MethodName.QueueFree, []); _game.CallDeferred(MethodName.QueueFree, []);
@@ -166,13 +166,13 @@ public partial class App : Node, IApp
}) })
.Handle((in AppLogic.Output.EnemyViewerOpened _) => .Handle((in AppLogic.Output.EnemyViewerOpened _) =>
{ {
LoadingScreen.Show(); LoadingScreen.ShowLoadingScreen();
MainMenu.Hide(); MainMenu.Hide();
LoadEnemyViewer(ENEMY_VIEWER_PATH); LoadEnemyViewer(ENEMY_VIEWER_PATH);
}) })
.Handle((in AppLogic.Output.EnemyViewerExited _) => .Handle((in AppLogic.Output.EnemyViewerExited _) =>
{ {
LoadingScreen.Hide(); LoadingScreen.HideLoadingScreen();
if (_enemyViewer != null && _enemyViewer is DataViewer enemyViewer) if (_enemyViewer != null && _enemyViewer is DataViewer enemyViewer)
enemyViewer.CallDeferred(MethodName.QueueFree); enemyViewer.CallDeferred(MethodName.QueueFree);
MainMenu.Show(); MainMenu.Show();
@@ -203,24 +203,22 @@ public partial class App : Node, IApp
_game = scene as IGame; _game = scene as IGame;
_game.GameLoaded += OnGameLoaded; _game.GameLoaded += OnGameLoaded;
_game.GameExitRequested += GameExitRequested; _game.GameExitRequested += GameExitRequested;
await ToSignal(GetTree().CreateTimer(0.8f), "timeout");
CallDeferred(MethodName.AddChild, scene); CallDeferred(MethodName.AddChild, scene);
} }
private void OnGameLoaded() => LoadingScreen.Hide(); private void OnGameLoaded() => LoadingScreen.HideLoadingScreen();
private async void LoadEnemyViewer(string sceneName) private async void LoadEnemyViewer(string sceneName)
{ {
var scene = await LoadSceneInternal(sceneName); var scene = await LoadSceneInternal(sceneName);
_enemyViewer = scene as IDataViewer; _enemyViewer = scene as IDataViewer;
await ToSignal(GetTree().CreateTimer(0.8f), "timeout");
CallDeferred(MethodName.AddChild, scene); CallDeferred(MethodName.AddChild, scene);
LoadingScreen.Hide(); LoadingScreen.HideLoadingScreen();
} }
private async Task<Node> LoadSceneInternal(string sceneName) private async Task<Node> LoadSceneInternal(string sceneName)
{ {
LoadingScreen.Show(); LoadingScreen.ShowLoadingScreen();
LoadingScreen.ProgressBar.Value = 0; LoadingScreen.ProgressBar.Value = 0;
var sceneLoader = new SceneLoader(); var sceneLoader = new SceneLoader();
CallDeferred(MethodName.AddChild, sceneLoader); CallDeferred(MethodName.AddChild, sceneLoader);

View File

@@ -10,9 +10,16 @@
process_mode = 3 process_mode = 3
script = ExtResource("1_rt73h") script = ExtResource("1_rt73h")
[node name="ColorRect" type="ColorRect" parent="."]
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
color = Color(0, 0, 0, 1)
[node name="MainMenu" parent="." instance=ExtResource("2_1uiag")] [node name="MainMenu" parent="." instance=ExtResource("2_1uiag")]
unique_name_in_owner = true unique_name_in_owner = true
visible = false
[node name="OptionsMenu" parent="." instance=ExtResource("2_v0mgf")] [node name="OptionsMenu" parent="." instance=ExtResource("2_v0mgf")]
unique_name_in_owner = true unique_name_in_owner = true
@@ -24,5 +31,6 @@ visible = false
[node name="LoadingScreen" parent="." instance=ExtResource("3_3st5l")] [node name="LoadingScreen" parent="." instance=ExtResource("3_3st5l")]
unique_name_in_owner = true unique_name_in_owner = true
visible = false
top_level = true top_level = true
z_index = 999 z_index = 999

View File

@@ -39,6 +39,7 @@ bus = &"SFX"
[node name="MoveSound" type="AudioStreamPlayer" parent="UI"] [node name="MoveSound" type="AudioStreamPlayer" parent="UI"]
unique_name_in_owner = true unique_name_in_owner = true
stream = ExtResource("6_r16t0") stream = ExtResource("6_r16t0")
max_polyphony = 5
bus = &"SFX" bus = &"SFX"
[node name="SelectSound" type="AudioStreamPlayer" parent="UI"] [node name="SelectSound" type="AudioStreamPlayer" parent="UI"]

View File

@@ -0,0 +1,40 @@
using Chickensoft.AutoInject;
using Chickensoft.Introspection;
using Godot;
using System.Linq;
using Zennysoft.Game.Ma;
using Zennysoft.Ma.Adapter;
using Zennysoft.Ma.Adapter.Entity;
[Meta(typeof(IAutoNode)), Id("debug")]
public partial class DebugInfo : Control
{
public override void _Notification(int what) => this.Notify(what);
[Dependency] private IGame _game => this.DependOn<IGame>();
[Dependency] private IGameRepo _gameRepo => this.DependOn<IGameRepo>();
[Dependency] private IMap _map => this.DependOn<IMap>();
[Dependency] private IPlayer _player => this.DependOn<IPlayer>();
[Node] public Label MapName { get; set; }
[Node] public Label EnemyCount { get; set; }
[Node] public Label DeathCount { get; set; }
public void OnResolved()
{
_map.FloorLoaded += _map_FloorLoaded;
_gameRepo.EnemyDied += _gameRepo_EnemyDied;
_player.PlayerDied += _player_PlayerDied;
DeathCount.Text = _game.QuestData.DeathCount.ToString();
}
private void _gameRepo_EnemyDied(IEnemy obj) => EnemyCount.Text = (EnemyCount.Text.ToInt() - 1).ToString();
private void _map_FloorLoaded()
{
MapName.Text = _map.CurrentFloor.SceneFilePath.GetFile().TrimSuffix(".tscn");
EnemyCount.Text = _map.CurrentFloor.GetChild(0).GetChildren().OfType<IDungeonRoom>().Select(x => x.GetChildren().OfType<IEnemy>()).Count().ToString();
}
private void _player_PlayerDied() => DeathCount.Text = _game.QuestData.DeathCount.ToString();
}

View File

@@ -0,0 +1 @@
uid://c4g3frcpt0h36

View File

@@ -0,0 +1,82 @@
[gd_scene load_steps=4 format=3 uid="uid://t22s2y1t8ktc"]
[ext_resource type="Script" uid="uid://c4g3frcpt0h36" path="res://src/debug_info/DebugInfo.cs" id="1_6tk84"]
[ext_resource type="LabelSettings" uid="uid://b6f8ggy3ulonb" path="res://src/ui/label_settings/GeorgiaItalic.tres" id="1_i766g"]
[ext_resource type="Script" uid="uid://3fpuxsgdl8xe" path="res://src/utils/FpsCounter.cs" id="3_rco7p"]
[node name="DebugInfo" type="Control"]
layout_mode = 3
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
script = ExtResource("1_6tk84")
[node name="MarginContainer" type="MarginContainer" parent="."]
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
theme_override_constants/margin_left = 20
theme_override_constants/margin_top = 20
theme_override_constants/margin_right = 20
theme_override_constants/margin_bottom = 20
[node name="VFlowContainer" type="VFlowContainer" parent="MarginContainer"]
layout_mode = 2
alignment = 2
[node name="FPS" type="HBoxContainer" parent="MarginContainer/VFlowContainer"]
layout_mode = 2
[node name="FPSLabel" type="Label" parent="MarginContainer/VFlowContainer/FPS"]
layout_mode = 2
text = "FPS:"
label_settings = ExtResource("1_i766g")
[node name="FPSCounter" type="Label" parent="MarginContainer/VFlowContainer/FPS"]
layout_mode = 2
label_settings = ExtResource("1_i766g")
script = ExtResource("3_rco7p")
[node name="MapInfo" type="HBoxContainer" parent="MarginContainer/VFlowContainer"]
layout_mode = 2
[node name="Map Name Label" type="Label" parent="MarginContainer/VFlowContainer/MapInfo"]
layout_mode = 2
text = "Map Name:"
label_settings = ExtResource("1_i766g")
[node name="MapName" type="Label" parent="MarginContainer/VFlowContainer/MapInfo"]
unique_name_in_owner = true
layout_mode = 2
label_settings = ExtResource("1_i766g")
[node name="EnemyInfo" type="HBoxContainer" parent="MarginContainer/VFlowContainer"]
layout_mode = 2
[node name="Enemy Count Label" type="Label" parent="MarginContainer/VFlowContainer/EnemyInfo"]
layout_mode = 2
text = "Number of enemies:"
label_settings = ExtResource("1_i766g")
[node name="EnemyCount" type="Label" parent="MarginContainer/VFlowContainer/EnemyInfo"]
unique_name_in_owner = true
layout_mode = 2
label_settings = ExtResource("1_i766g")
[node name="HBoxContainer" type="HBoxContainer" parent="MarginContainer/VFlowContainer"]
layout_mode = 2
[node name="DeathCountLabel" type="Label" parent="MarginContainer/VFlowContainer/HBoxContainer"]
layout_mode = 2
text = "Player Death Count:"
label_settings = ExtResource("1_i766g")
[node name="DeathCount" type="Label" parent="MarginContainer/VFlowContainer/HBoxContainer"]
unique_name_in_owner = true
layout_mode = 2
label_settings = ExtResource("1_i766g")

View File

@@ -109,7 +109,6 @@ _acquireTargetTime = 2.0
unique_name_in_owner = true unique_name_in_owner = true
avoidance_enabled = true avoidance_enabled = true
radius = 1.0 radius = 1.0
debug_enabled = true
[node name="SFX" type="Node3D" parent="."] [node name="SFX" type="Node3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 2.0617, 0) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 2.0617, 0)

View File

@@ -157,9 +157,7 @@ public partial class Game : Node3D, IGame
GameState.Set(_player); GameState.Set(_player);
GameState.Set(_map); GameState.Set(_map);
GameState.Set(InGameUI); GameState.Set(InGameUI);
GameRepo.Resume();
InGameUI.Show();
HandleGameLogic(); HandleGameLogic();
GameState.Start(); GameState.Start();
this.Provide(); this.Provide();
@@ -188,6 +186,8 @@ public partial class Game : Node3D, IGame
GameRepo.IsPaused.Sync += IsPaused_Sync; GameRepo.IsPaused.Sync += IsPaused_Sync;
InGameUI.PlayerInfoUI.Activate(); InGameUI.PlayerInfoUI.Activate();
InGameUI.Show();
GameRepo.Resume();
} }
private void GameRepo_EnemyDied(IEnemy obj) private void GameRepo_EnemyDied(IEnemy obj)
@@ -209,7 +209,6 @@ public partial class Game : Node3D, IGame
_effectService = new EffectService(this, _player, _map); _effectService = new EffectService(this, _player, _map);
_player.Activate(); _player.Activate();
await _map.LoadFloor(); await _map.LoadFloor();
GameLoaded?.Invoke();
} }
public async Task Save() => await SaveFile.Save(); public async Task Save() => await SaveFile.Save();
@@ -233,9 +232,6 @@ public partial class Game : Node3D, IGame
EnactEffectItemEffects(effectItem); EnactEffectItemEffects(effectItem);
break; break;
} }
await ToSignal(GetTree().CreateTimer(0.3f), "timeout");
RemoveItemOrSubtractFromItemCount(item); RemoveItemOrSubtractFromItemCount(item);
} }
@@ -398,7 +394,10 @@ public partial class Game : Node3D, IGame
InGameUI.InventoryMenu.SetProcessInput(false); InGameUI.InventoryMenu.SetProcessInput(false);
} }
private async void LoadLevel() => await _map.LoadFloor(); private async void LoadLevel()
{
await _map.LoadFloor();
}
private void FloorClearMenu_GoToNextFloor() => GameState.Input(new GameState.Input.LoadNextFloor()); private void FloorClearMenu_GoToNextFloor() => GameState.Input(new GameState.Input.LoadNextFloor());
@@ -419,7 +418,6 @@ public partial class Game : Node3D, IGame
private void UseTeleportPrompt_TeleportToNextFloor() private void UseTeleportPrompt_TeleportToNextFloor()
{ {
//_player.LookUp();
GameState.Input(new GameState.Input.UseTeleport()); GameState.Input(new GameState.Input.UseTeleport());
} }
@@ -588,6 +586,8 @@ public partial class Game : Node3D, IGame
private void OnFloorLoadFinished() private void OnFloorLoadFinished()
{ {
LoadNextLevel.Hide(); LoadNextLevel.Hide();
GameLoaded?.Invoke();
_map.FadeIn();
} }
private void OnQuit() => GameExitRequested?.Invoke(); private void OnQuit() => GameExitRequested?.Invoke();

View File

@@ -11,11 +11,11 @@ process_mode = 3
script = ExtResource("1_ytcii") script = ExtResource("1_ytcii")
[node name="SubViewportContainer" type="SubViewportContainer" parent="."] [node name="SubViewportContainer" type="SubViewportContainer" parent="."]
custom_minimum_size = Vector2(1440, 1080) custom_minimum_size = Vector2(1456, 1080)
anchors_preset = 15 anchors_preset = 15
anchor_right = 1.0 anchor_right = 1.0
anchor_bottom = 1.0 anchor_bottom = 1.0
offset_right = -480.0 offset_right = -464.0
grow_horizontal = 2 grow_horizontal = 2
grow_vertical = 2 grow_vertical = 2
stretch = true stretch = true
@@ -23,7 +23,7 @@ stretch = true
[node name="SubViewport" type="SubViewport" parent="SubViewportContainer"] [node name="SubViewport" type="SubViewport" parent="SubViewportContainer"]
handle_input_locally = false handle_input_locally = false
audio_listener_enable_3d = true audio_listener_enable_3d = true
size = Vector2i(1440, 1080) size = Vector2i(1456, 1080)
render_target_update_mode = 4 render_target_update_mode = 4
[node name="PauseContainer" type="Node3D" parent="SubViewportContainer/SubViewport"] [node name="PauseContainer" type="Node3D" parent="SubViewportContainer/SubViewport"]

Binary file not shown.

After

Width:  |  Height:  |  Size: 17 KiB

View File

@@ -0,0 +1,35 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://cj1psfba5bhup"
path.bptc="res://.godot/imported/3Dkubel.png-a18d215cb94179f4294d3437e869ace0.bptc.ctex"
metadata={
"imported_formats": ["s3tc_bptc"],
"vram_texture": true
}
[deps]
source_file="res://src/items/3D Render Icons/3Dkubel.png"
dest_files=["res://.godot/imported/3Dkubel.png-a18d215cb94179f4294d3437e869ace0.bptc.ctex"]
[params]
compress/mode=2
compress/high_quality=true
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=0

Binary file not shown.

After

Width:  |  Height:  |  Size: 155 KiB

View File

@@ -0,0 +1,35 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://n6lwh1cyv341"
path.bptc="res://.godot/imported/Air Sword.png-3fb721b7bcf300440568d8d397e2f08a.bptc.ctex"
metadata={
"imported_formats": ["s3tc_bptc"],
"vram_texture": true
}
[deps]
source_file="res://src/items/3D Render Icons/Air Sword.png"
dest_files=["res://.godot/imported/Air Sword.png-3fb721b7bcf300440568d8d397e2f08a.bptc.ctex"]
[params]
compress/mode=2
compress/high_quality=true
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=0

Binary file not shown.

After

Width:  |  Height:  |  Size: 14 KiB

View File

@@ -0,0 +1,35 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://cyulehmrydvlj"
path.bptc="res://.godot/imported/Amrit Draught.png-35b730b93b8eff4559eaa14144595d68.bptc.ctex"
metadata={
"imported_formats": ["s3tc_bptc"],
"vram_texture": true
}
[deps]
source_file="res://src/items/3D Render Icons/Amrit Draught.png"
dest_files=["res://.godot/imported/Amrit Draught.png-35b730b93b8eff4559eaa14144595d68.bptc.ctex"]
[params]
compress/mode=2
compress/high_quality=true
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=0

Binary file not shown.

After

Width:  |  Height:  |  Size: 19 KiB

View File

@@ -0,0 +1,35 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://d3vi6eudj6yko"
path.bptc="res://.godot/imported/Atoner\'s Adornments.png-3bce8c3275634ff56740f4832400641b.bptc.ctex"
metadata={
"imported_formats": ["s3tc_bptc"],
"vram_texture": true
}
[deps]
source_file="res://src/items/3D Render Icons/Atoner's Adornments.png"
dest_files=["res://.godot/imported/Atoner\\'s Adornments.png-3bce8c3275634ff56740f4832400641b.bptc.ctex"]
[params]
compress/mode=2
compress/high_quality=true
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=0

Binary file not shown.

After

Width:  |  Height:  |  Size: 26 KiB

View File

@@ -0,0 +1,35 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://c0wgpatx70de4"
path.bptc="res://.godot/imported/Black Egg.png-5ce75c2cdf50ba9722cb9b894c446653.bptc.ctex"
metadata={
"imported_formats": ["s3tc_bptc"],
"vram_texture": true
}
[deps]
source_file="res://src/items/3D Render Icons/Black Egg.png"
dest_files=["res://.godot/imported/Black Egg.png-5ce75c2cdf50ba9722cb9b894c446653.bptc.ctex"]
[params]
compress/mode=2
compress/high_quality=true
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=0

Binary file not shown.

After

Width:  |  Height:  |  Size: 22 KiB

View File

@@ -0,0 +1,35 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://dj5xmrdeubq8j"
path.bptc="res://.godot/imported/Blue Dice.png-4047911bc3a11c8cc2e1275a041789a5.bptc.ctex"
metadata={
"imported_formats": ["s3tc_bptc"],
"vram_texture": true
}
[deps]
source_file="res://src/items/3D Render Icons/Blue Dice.png"
dest_files=["res://.godot/imported/Blue Dice.png-4047911bc3a11c8cc2e1275a041789a5.bptc.ctex"]
[params]
compress/mode=2
compress/high_quality=true
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=0

Binary file not shown.

After

Width:  |  Height:  |  Size: 19 KiB

View File

@@ -0,0 +1,35 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://cua5drksphcuw"
path.bptc="res://.godot/imported/Devic Balance.png-80791b3a36b4aa5ed2a8b134bc82bf2a.bptc.ctex"
metadata={
"imported_formats": ["s3tc_bptc"],
"vram_texture": true
}
[deps]
source_file="res://src/items/3D Render Icons/Devic Balance.png"
dest_files=["res://.godot/imported/Devic Balance.png-80791b3a36b4aa5ed2a8b134bc82bf2a.bptc.ctex"]
[params]
compress/mode=2
compress/high_quality=true
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=0

Binary file not shown.

After

Width:  |  Height:  |  Size: 21 KiB

View File

@@ -0,0 +1,35 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://c372a0necdqs0"
path.bptc="res://.godot/imported/Divinity Recall.png-ef70f51dd72cbdd5c30cffaa2eea94a9.bptc.ctex"
metadata={
"imported_formats": ["s3tc_bptc"],
"vram_texture": true
}
[deps]
source_file="res://src/items/3D Render Icons/Divinity Recall.png"
dest_files=["res://.godot/imported/Divinity Recall.png-ef70f51dd72cbdd5c30cffaa2eea94a9.bptc.ctex"]
[params]
compress/mode=2
compress/high_quality=true
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=0

Binary file not shown.

After

Width:  |  Height:  |  Size: 17 KiB

View File

@@ -0,0 +1,35 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://b0oixkrxy542r"
path.bptc="res://.godot/imported/Empty Box.png-2c89968b026eec73d47d3563e0fb4018.bptc.ctex"
metadata={
"imported_formats": ["s3tc_bptc"],
"vram_texture": true
}
[deps]
source_file="res://src/items/3D Render Icons/Empty Box.png"
dest_files=["res://.godot/imported/Empty Box.png-2c89968b026eec73d47d3563e0fb4018.bptc.ctex"]
[params]
compress/mode=2
compress/high_quality=true
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=0

Binary file not shown.

After

Width:  |  Height:  |  Size: 18 KiB

View File

@@ -0,0 +1,35 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://pd3pm3v08sfl"
path.bptc="res://.godot/imported/Glue Jar.png-4e7efb00a0b1619093f937a2d452992f.bptc.ctex"
metadata={
"imported_formats": ["s3tc_bptc"],
"vram_texture": true
}
[deps]
source_file="res://src/items/3D Render Icons/Glue Jar.png"
dest_files=["res://.godot/imported/Glue Jar.png-4e7efb00a0b1619093f937a2d452992f.bptc.ctex"]
[params]
compress/mode=2
compress/high_quality=true
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=0

Binary file not shown.

After

Width:  |  Height:  |  Size: 20 KiB

View File

@@ -0,0 +1,35 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://slvcnyc3mbqt"
path.bptc="res://.godot/imported/Gospel of Dimension.png-b656634601758e712807960ede3e83f9.bptc.ctex"
metadata={
"imported_formats": ["s3tc_bptc"],
"vram_texture": true
}
[deps]
source_file="res://src/items/3D Render Icons/Gospel of Dimension.png"
dest_files=["res://.godot/imported/Gospel of Dimension.png-b656634601758e712807960ede3e83f9.bptc.ctex"]
[params]
compress/mode=2
compress/high_quality=true
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=0

Binary file not shown.

After

Width:  |  Height:  |  Size: 19 KiB

View File

@@ -0,0 +1,35 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://bybhtaq06p0yk"
path.bptc="res://.godot/imported/Gospel of Paths.png-ecb9c11664bb47fc2583894d52545cd3.bptc.ctex"
metadata={
"imported_formats": ["s3tc_bptc"],
"vram_texture": true
}
[deps]
source_file="res://src/items/3D Render Icons/Gospel of Paths.png"
dest_files=["res://.godot/imported/Gospel of Paths.png-ecb9c11664bb47fc2583894d52545cd3.bptc.ctex"]
[params]
compress/mode=2
compress/high_quality=true
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=0

Binary file not shown.

After

Width:  |  Height:  |  Size: 23 KiB

View File

@@ -0,0 +1,35 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://bs4m7xr2jfhf2"
path.bptc="res://.godot/imported/Green Dice.png-d035a0e3c8bff483947f9a42d5cf83d1.bptc.ctex"
metadata={
"imported_formats": ["s3tc_bptc"],
"vram_texture": true
}
[deps]
source_file="res://src/items/3D Render Icons/Green Dice.png"
dest_files=["res://.godot/imported/Green Dice.png-d035a0e3c8bff483947f9a42d5cf83d1.bptc.ctex"]
[params]
compress/mode=2
compress/high_quality=true
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=0

Binary file not shown.

After

Width:  |  Height:  |  Size: 14 KiB

View File

@@ -0,0 +1,35 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://dmk4hb7h4qvx2"
path.bptc="res://.godot/imported/Haoma Draught.png-59aaebbfd5505f382affc2c1c54f3e28.bptc.ctex"
metadata={
"imported_formats": ["s3tc_bptc"],
"vram_texture": true
}
[deps]
source_file="res://src/items/3D Render Icons/Haoma Draught.png"
dest_files=["res://.godot/imported/Haoma Draught.png-59aaebbfd5505f382affc2c1c54f3e28.bptc.ctex"]
[params]
compress/mode=2
compress/high_quality=true
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=0

Binary file not shown.

After

Width:  |  Height:  |  Size: 16 KiB

View File

@@ -0,0 +1,35 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://clcnicpji56vc"
path.bptc="res://.godot/imported/Heaven\'s Rebellion.png-10a45986b8a94b2ee6a164b4cb635b92.bptc.ctex"
metadata={
"imported_formats": ["s3tc_bptc"],
"vram_texture": true
}
[deps]
source_file="res://src/items/3D Render Icons/Heaven's Rebellion.png"
dest_files=["res://.godot/imported/Heaven\\'s Rebellion.png-10a45986b8a94b2ee6a164b4cb635b92.bptc.ctex"]
[params]
compress/mode=2
compress/high_quality=true
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=0

Binary file not shown.

After

Width:  |  Height:  |  Size: 37 KiB

View File

@@ -0,0 +1,35 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://bsgrvkq55p2xt"
path.bptc="res://.godot/imported/HolyArmor2.png-a16e204bd19ced0cc086185aa5c6b4a8.bptc.ctex"
metadata={
"imported_formats": ["s3tc_bptc"],
"vram_texture": true
}
[deps]
source_file="res://src/items/3D Render Icons/HolyArmor2.png"
dest_files=["res://.godot/imported/HolyArmor2.png-a16e204bd19ced0cc086185aa5c6b4a8.bptc.ctex"]
[params]
compress/mode=2
compress/high_quality=true
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=0

Binary file not shown.

After

Width:  |  Height:  |  Size: 28 KiB

View File

@@ -0,0 +1,35 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://bdxe24nfvn8qo"
path.bptc="res://.godot/imported/Jar.png-9ad86c552bdbd2ca0c6b8ee92317692b.bptc.ctex"
metadata={
"imported_formats": ["s3tc_bptc"],
"vram_texture": true
}
[deps]
source_file="res://src/items/3D Render Icons/Jar.png"
dest_files=["res://.godot/imported/Jar.png-9ad86c552bdbd2ca0c6b8ee92317692b.bptc.ctex"]
[params]
compress/mode=2
compress/high_quality=true
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=0

Binary file not shown.

After

Width:  |  Height:  |  Size: 15 KiB

View File

@@ -0,0 +1,35 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://cpq1ryk8n87xr"
path.bptc="res://.godot/imported/Katar.png-f80debce1f8ad813196ab30e594b3968.bptc.ctex"
metadata={
"imported_formats": ["s3tc_bptc"],
"vram_texture": true
}
[deps]
source_file="res://src/items/3D Render Icons/Katar.png"
dest_files=["res://.godot/imported/Katar.png-f80debce1f8ad813196ab30e594b3968.bptc.ctex"]
[params]
compress/mode=2
compress/high_quality=true
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=0

Binary file not shown.

After

Width:  |  Height:  |  Size: 20 KiB

View File

@@ -0,0 +1,35 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://cft1sn3ttmqkg"
path.bptc="res://.godot/imported/Kyuuketsuki.png-e3b7774ccca1e6c62ffb798529342f4b.bptc.ctex"
metadata={
"imported_formats": ["s3tc_bptc"],
"vram_texture": true
}
[deps]
source_file="res://src/items/3D Render Icons/Kyuuketsuki.png"
dest_files=["res://.godot/imported/Kyuuketsuki.png-e3b7774ccca1e6c62ffb798529342f4b.bptc.ctex"]
[params]
compress/mode=2
compress/high_quality=true
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=0

Binary file not shown.

After

Width:  |  Height:  |  Size: 13 KiB

View File

@@ -0,0 +1,35 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://djmaermmn6ehi"
path.bptc="res://.godot/imported/Love Judgement.png-4da79c57fa4fc1600e3d6dab48bf13df.bptc.ctex"
metadata={
"imported_formats": ["s3tc_bptc"],
"vram_texture": true
}
[deps]
source_file="res://src/items/3D Render Icons/Love Judgement.png"
dest_files=["res://.godot/imported/Love Judgement.png-4da79c57fa4fc1600e3d6dab48bf13df.bptc.ctex"]
[params]
compress/mode=2
compress/high_quality=true
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=0

Binary file not shown.

After

Width:  |  Height:  |  Size: 27 KiB

View File

@@ -0,0 +1,35 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://cy7qvpjahblv3"
path.bptc="res://.godot/imported/Mask of Zeal.png-27ba6e23bb2ecd6acedb6fdbc3423aee.bptc.ctex"
metadata={
"imported_formats": ["s3tc_bptc"],
"vram_texture": true
}
[deps]
source_file="res://src/items/3D Render Icons/Mask of Zeal.png"
dest_files=["res://.godot/imported/Mask of Zeal.png-27ba6e23bb2ecd6acedb6fdbc3423aee.bptc.ctex"]
[params]
compress/mode=2
compress/high_quality=true
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=0

Binary file not shown.

After

Width:  |  Height:  |  Size: 20 KiB

View File

@@ -0,0 +1,35 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://dritnstkmbugq"
path.bptc="res://.godot/imported/Metal Dice.png-66665129ca1dc12e631e08b684392163.bptc.ctex"
metadata={
"imported_formats": ["s3tc_bptc"],
"vram_texture": true
}
[deps]
source_file="res://src/items/3D Render Icons/Metal Dice.png"
dest_files=["res://.godot/imported/Metal Dice.png-66665129ca1dc12e631e08b684392163.bptc.ctex"]
[params]
compress/mode=2
compress/high_quality=true
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=0

Binary file not shown.

After

Width:  |  Height:  |  Size: 27 KiB

View File

@@ -0,0 +1,35 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://3erkuo1fk0c4"
path.bptc="res://.godot/imported/Nebula Chain.png-bc04c678960d067a826e90635f9c39ab.bptc.ctex"
metadata={
"imported_formats": ["s3tc_bptc"],
"vram_texture": true
}
[deps]
source_file="res://src/items/3D Render Icons/Nebula Chain.png"
dest_files=["res://.godot/imported/Nebula Chain.png-bc04c678960d067a826e90635f9c39ab.bptc.ctex"]
[params]
compress/mode=2
compress/high_quality=true
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=0

Binary file not shown.

After

Width:  |  Height:  |  Size: 20 KiB

View File

@@ -0,0 +1,35 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://b5ie3bknrcpbw"
path.bptc="res://.godot/imported/Red Dice.png-614e67097ac2c48c2ffe4b59f19a35f8.bptc.ctex"
metadata={
"imported_formats": ["s3tc_bptc"],
"vram_texture": true
}
[deps]
source_file="res://src/items/3D Render Icons/Red Dice.png"
dest_files=["res://.godot/imported/Red Dice.png-614e67097ac2c48c2ffe4b59f19a35f8.bptc.ctex"]
[params]
compress/mode=2
compress/high_quality=true
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=0

Binary file not shown.

After

Width:  |  Height:  |  Size: 15 KiB

View File

@@ -0,0 +1,35 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://cn3mew6saujmq"
path.bptc="res://.godot/imported/Rusted Sword.png-2ab13a21d5ffb46783c81d5ce0040849.bptc.ctex"
metadata={
"imported_formats": ["s3tc_bptc"],
"vram_texture": true
}
[deps]
source_file="res://src/items/3D Render Icons/Rusted Sword.png"
dest_files=["res://.godot/imported/Rusted Sword.png-2ab13a21d5ffb46783c81d5ce0040849.bptc.ctex"]
[params]
compress/mode=2
compress/high_quality=true
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=0

Binary file not shown.

After

Width:  |  Height:  |  Size: 19 KiB

View File

@@ -0,0 +1,35 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://3i21sj5kbya0"
path.bptc="res://.godot/imported/Sine Morph.png-83a28ce604b213c558ffbca37787a128.bptc.ctex"
metadata={
"imported_formats": ["s3tc_bptc"],
"vram_texture": true
}
[deps]
source_file="res://src/items/3D Render Icons/Sine Morph.png"
dest_files=["res://.godot/imported/Sine Morph.png-83a28ce604b213c558ffbca37787a128.bptc.ctex"]
[params]
compress/mode=2
compress/high_quality=true
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=0

Binary file not shown.

After

Width:  |  Height:  |  Size: 60 KiB

View File

@@ -0,0 +1,35 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://clmtbjmwemepv"
path.bptc="res://.godot/imported/Wood Armor.png-8a319a82922562d4b57962dd84759331.bptc.ctex"
metadata={
"imported_formats": ["s3tc_bptc"],
"vram_texture": true
}
[deps]
source_file="res://src/items/3D Render Icons/Wood Armor.png"
dest_files=["res://.godot/imported/Wood Armor.png-8a319a82922562d4b57962dd84759331.bptc.ctex"]
[params]
compress/mode=2
compress/high_quality=true
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=0

Binary file not shown.

After

Width:  |  Height:  |  Size: 14 KiB

View File

@@ -0,0 +1,35 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://cn1uymew0wwoj"
path.bptc="res://.godot/imported/Ydunic Draught.png-7e2a389f9a6dcdc17666096aa2e79f64.bptc.ctex"
metadata={
"imported_formats": ["s3tc_bptc"],
"vram_texture": true
}
[deps]
source_file="res://src/items/3D Render Icons/Ydunic Draught.png"
dest_files=["res://.godot/imported/Ydunic Draught.png-7e2a389f9a6dcdc17666096aa2e79f64.bptc.ctex"]
[params]
compress/mode=2
compress/high_quality=true
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=0

Binary file not shown.

After

Width:  |  Height:  |  Size: 14 KiB

View File

@@ -0,0 +1,35 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://dayra4hcppa3x"
path.bptc="res://.godot/imported/ancient medicine.png-b41560cee26578e2e61e4540efc2104a.bptc.ctex"
metadata={
"imported_formats": ["s3tc_bptc"],
"vram_texture": true
}
[deps]
source_file="res://src/items/3D Render Icons/ancient medicine.png"
dest_files=["res://.godot/imported/ancient medicine.png-b41560cee26578e2e61e4540efc2104a.bptc.ctex"]
[params]
compress/mode=2
compress/high_quality=true
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=0

Binary file not shown.

After

Width:  |  Height:  |  Size: 15 KiB

View File

@@ -0,0 +1,35 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://cy5bd7f37fi35"
path.bptc="res://.godot/imported/health item placeholder.png-d6e3fd30b79c4ebf810d66504d813903.bptc.ctex"
metadata={
"imported_formats": ["s3tc_bptc"],
"vram_texture": true
}
[deps]
source_file="res://src/items/3D Render Icons/health item placeholder.png"
dest_files=["res://.godot/imported/health item placeholder.png-d6e3fd30b79c4ebf810d66504d813903.bptc.ctex"]
[params]
compress/mode=2
compress/high_quality=true
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=0

Binary file not shown.

After

Width:  |  Height:  |  Size: 14 KiB

View File

@@ -0,0 +1,35 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://bgt30ril4h6pf"
path.bptc="res://.godot/imported/kugloj.png-9f3f4535d0256a7e257234de1e7c6bda.bptc.ctex"
metadata={
"imported_formats": ["s3tc_bptc"],
"vram_texture": true
}
[deps]
source_file="res://src/items/3D Render Icons/kugloj.png"
dest_files=["res://.godot/imported/kugloj.png-9f3f4535d0256a7e257234de1e7c6bda.bptc.ctex"]
[params]
compress/mode=2
compress/high_quality=true
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=0

Binary file not shown.

After

Width:  |  Height:  |  Size: 17 KiB

View File

@@ -0,0 +1,35 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://m0f8xmp8l2fe"
path.bptc="res://.godot/imported/mask placeholder.png-214c6109a019a6bad1f6bd77ac323bd3.bptc.ctex"
metadata={
"imported_formats": ["s3tc_bptc"],
"vram_texture": true
}
[deps]
source_file="res://src/items/3D Render Icons/mask placeholder.png"
dest_files=["res://.godot/imported/mask placeholder.png-214c6109a019a6bad1f6bd77ac323bd3.bptc.ctex"]
[params]
compress/mode=2
compress/high_quality=true
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=0

Binary file not shown.

After

Width:  |  Height:  |  Size: 20 KiB

View File

@@ -0,0 +1,35 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://dcad552vcrosw"
path.bptc="res://.godot/imported/yellowd.png-5badfa368c6ca6602e9b798b650e9a75.bptc.ctex"
metadata={
"imported_formats": ["s3tc_bptc"],
"vram_texture": true
}
[deps]
source_file="res://src/items/3D Render Icons/yellowd.png"
dest_files=["res://.godot/imported/yellowd.png-5badfa368c6ca6602e9b798b650e9a75.bptc.ctex"]
[params]
compress/mode=2
compress/high_quality=true
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=0

View File

@@ -172,7 +172,11 @@ public class EffectService
SfxDatabase.Instance.Play(SoundEffect.IncreaseStat); SfxDatabase.Instance.Play(SoundEffect.IncreaseStat);
} }
public void RaiseLevel() => _player.LevelUp(); public void RaiseLevel()
{
var expToNextLevel = _player.ExperiencePointsComponent.ExpToNextLevel.Value - _player.ExperiencePointsComponent.CurrentExp.Value;
_player.ExperiencePointsComponent.GainUnmodified(expToNextLevel);
}
public void TeleportToRandomRoom(IEnemy enemy) public void TeleportToRandomRoom(IEnemy enemy)
{ {
@@ -252,17 +256,13 @@ public class EffectService
public void TradeRandomItem<T>(BoxItem box) public void TradeRandomItem<T>(BoxItem box)
where T : IBaseInventoryItem where T : IBaseInventoryItem
{ {
var tradableItems = _player.Inventory.Items.OfType<T>().Where(x => x != box).ToList(); var tradableItems = _player.Inventory.Items.OfType<T>().ToList();
var rng = new RandomNumberGenerator(); var rng = new RandomNumberGenerator();
rng.Randomize(); rng.Randomize();
var randomIndex = rng.RandiRange(0, tradableItems.Count - 1); var randomIndex = rng.RandiRange(0, tradableItems.Count - 1);
var randomItem = tradableItems[randomIndex]; var randomItem = tradableItems[randomIndex];
if (randomItem is IEquipableItem equipableItem) if (randomItem is IEquipableItem equipableItem && _player.EquipmentComponent.IsItemEquipped(equipableItem))
{ _player.Unequip(equipableItem);
if (_player.EquipmentComponent.IsItemEquipped(equipableItem))
_player.Unequip(equipableItem);
}
_player.Inventory.Remove(randomItem); _player.Inventory.Remove(randomItem);
GetRandomItemOfType<T>(); GetRandomItemOfType<T>();

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

View File

@@ -0,0 +1,35 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://d3g5l5x5crrcy"
path.bptc="res://.godot/imported/FRAME 2.png-229cea0e1e02f919f524c9941094cf2b.bptc.ctex"
metadata={
"imported_formats": ["s3tc_bptc"],
"vram_texture": true
}
[deps]
source_file="res://src/items/VT Crystal/FRAME 2.png"
dest_files=["res://.godot/imported/FRAME 2.png-229cea0e1e02f919f524c9941094cf2b.bptc.ctex"]
[params]
compress/mode=2
compress/high_quality=true
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=0

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

View File

@@ -0,0 +1,35 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://evb7fqb01tm5"
path.bptc="res://.godot/imported/FRAME 3.png-d7f1ced39fbde420333fb73302a64991.bptc.ctex"
metadata={
"imported_formats": ["s3tc_bptc"],
"vram_texture": true
}
[deps]
source_file="res://src/items/VT Crystal/FRAME 3.png"
dest_files=["res://.godot/imported/FRAME 3.png-d7f1ced39fbde420333fb73302a64991.bptc.ctex"]
[params]
compress/mode=2
compress/high_quality=true
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=0

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

View File

@@ -0,0 +1,35 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://b36xqrykgtdkw"
path.bptc="res://.godot/imported/FRAME1.png-2a41a5e2a774e029a8c5614fdd3304e6.bptc.ctex"
metadata={
"imported_formats": ["s3tc_bptc"],
"vram_texture": true
}
[deps]
source_file="res://src/items/VT Crystal/FRAME1.png"
dest_files=["res://.godot/imported/FRAME1.png-2a41a5e2a774e029a8c5614fdd3304e6.bptc.ctex"]
[params]
compress/mode=2
compress/high_quality=true
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=0

View File

@@ -1,14 +1,14 @@
[gd_resource type="Resource" script_class="WeaponStats" load_steps=3 format=3 uid="uid://db075qhmlmrcu"] [gd_resource type="Resource" script_class="WeaponStats" load_steps=4 format=3 uid="uid://db075qhmlmrcu"]
[ext_resource type="Script" uid="uid://cc7byqeolw5y4" path="res://src/items/weapons/WeaponStats.cs" id="1_kbje7"] [ext_resource type="Script" uid="uid://cc7byqeolw5y4" path="res://src/items/weapons/WeaponStats.cs" id="1_kbje7"]
[ext_resource type="Texture2D" uid="uid://cb86dpkft2m03" path="res://src/items/weapons/textures/KUBEL.PNG" id="1_kwtbu"] [ext_resource type="Texture2D" uid="uid://bkntmni5jxfpk" path="res://src/items/weapons/textures/KUBEL.PNG" id="1_kwtbu"]
[ext_resource type="AudioStream" uid="uid://ilf2s8ct2stt" path="res://src/audio/sfx/PLAYER_slower_slash.ogg" id="1_xfglq"]
[resource] [resource]
script = ExtResource("1_kbje7") script = ExtResource("1_kbje7")
AttackSpeed = 1.0 AttackSpeed = 1.0
WeaponElement = 5 WeaponElement = 5
WeaponTag = 0 WeaponTag = 0
SelfDamage = 0
SoundEffect = 4 SoundEffect = 4
Name = "Kubel" Name = "Kubel"
Description = "+9 ATK Description = "+9 ATK
@@ -25,9 +25,8 @@ TelluricResistance = 0
HydricResistance = 0 HydricResistance = 0
IgneousResistance = 0 IgneousResistance = 0
FerrumResistance = 0 FerrumResistance = 0
HolyResistance = 0
CurseResistance = 0
ThrowSpeed = 12.0 ThrowSpeed = 12.0
ThrowDamage = 5 ThrowDamage = 5
ItemTag = 0 ItemTag = 0
Texture = ExtResource("1_kwtbu") Texture = ExtResource("1_kwtbu")
AudioStream = ExtResource("1_xfglq")

View File

@@ -20,6 +20,10 @@ public interface IMap : INode3D
void InitializeMapData(); void InitializeMapData();
public void FadeIn();
public void FadeOut();
public AutoProp<int> CurrentFloorNumber { get; } public AutoProp<int> CurrentFloorNumber { get; }
public event Action<(Vector3 Rotation, Vector3 Position)> SpawnPointCreated; public event Action<(Vector3 Rotation, Vector3 Position)> SpawnPointCreated;

View File

@@ -59,9 +59,11 @@ public partial class Map : Node3D, IMap
var floor = MapOrder.GetChildren().OfType<FloorNode>().ElementAt(CurrentFloorNumber.Value); var floor = MapOrder.GetChildren().OfType<FloorNode>().ElementAt(CurrentFloorNumber.Value);
if (CurrentFloor is DungeonFloor dungeonFloor && floor is DungeonFloorNode dungeonFloorNode) if (CurrentFloor is DungeonFloor dungeonFloor && floor is DungeonFloorNode dungeonFloorNode)
dungeonFloor.SpawnEnemies(dungeonFloorNode); dungeonFloor.SpawnEnemies(dungeonFloorNode);
AnimationPlayer.CallDeferred(AnimationPlayer.MethodName.Play, ("fade_in"));
} }
public void FadeIn() => AnimationPlayer.Play("fade_in");
public void FadeOut() => AnimationPlayer.Play("fade_out");
public void InitializeMapData() public void InitializeMapData()
{ {
CurrentFloorNumber.OnNext(-1); CurrentFloorNumber.OnNext(-1);
@@ -89,7 +91,7 @@ public partial class Map : Node3D, IMap
public async Task LoadFloor(string sceneName) public async Task LoadFloor(string sceneName)
{ {
AnimationPlayer.CallDeferred(AnimationPlayer.MethodName.Play, "fade_out"); CallDeferred(MethodName.FadeOut);
_sceneName = sceneName; _sceneName = sceneName;
var dimmableAudio = GetTree().GetNodesInGroup("DimmableAudio").OfType<IDimmableAudioStreamPlayer>(); var dimmableAudio = GetTree().GetNodesInGroup("DimmableAudio").OfType<IDimmableAudioStreamPlayer>();
foreach (var node in dimmableAudio) foreach (var node in dimmableAudio)

View File

@@ -19,7 +19,22 @@ tracks/0/keys = {
"values": [Color(0, 0, 0, 1)] "values": [Color(0, 0, 0, 1)]
} }
[sub_resource type="Animation" id="Animation_g6eui"] [sub_resource type="Animation" id="Animation_v14r0"]
resource_name = "fade_out"
tracks/0/type = "value"
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/path = NodePath("ColorRect:color")
tracks/0/interp = 1
tracks/0/loop_wrap = true
tracks/0/keys = {
"times": PackedFloat32Array(0, 1),
"transitions": PackedFloat32Array(1, 1),
"update": 0,
"values": [Color(0, 0, 0, 0), Color(0, 0, 0, 1)]
}
[sub_resource type="Animation" id="Animation_0qcd2"]
resource_name = "fade_in" resource_name = "fade_in"
tracks/0/type = "value" tracks/0/type = "value"
tracks/0/imported = false tracks/0/imported = false
@@ -34,39 +49,16 @@ tracks/0/keys = {
"values": [Color(0, 0, 0, 1), Color(0, 0, 0, 0)] "values": [Color(0, 0, 0, 1), Color(0, 0, 0, 0)]
} }
[sub_resource type="Animation" id="Animation_v14r0"]
resource_name = "fade_out"
tracks/0/type = "value"
tracks/0/imported = false
tracks/0/enabled = true
tracks/0/path = NodePath("ColorRect:color")
tracks/0/interp = 1
tracks/0/loop_wrap = true
tracks/0/keys = {
"times": PackedFloat32Array(-0.0666667, 0),
"transitions": PackedFloat32Array(1, 1),
"update": 0,
"values": [Color(0, 0, 0, 1), Color(0, 0, 0, 1)]
}
[sub_resource type="AnimationLibrary" id="AnimationLibrary_00xd7"] [sub_resource type="AnimationLibrary" id="AnimationLibrary_00xd7"]
_data = { _data = {
&"RESET": SubResource("Animation_00xd7"), &"RESET": SubResource("Animation_00xd7"),
&"fade_in": SubResource("Animation_g6eui"), &"fade_in": SubResource("Animation_0qcd2"),
&"fade_out": SubResource("Animation_v14r0") &"fade_out": SubResource("Animation_v14r0")
} }
[node name="Map" type="Node3D"] [node name="Map" type="Node3D"]
script = ExtResource("1_bw70o") script = ExtResource("1_bw70o")
[node name="ColorRect" type="ColorRect" parent="."]
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
color = Color(0, 0, 0, 1)
[node name="AnimationPlayer" type="AnimationPlayer" parent="."] [node name="AnimationPlayer" type="AnimationPlayer" parent="."]
unique_name_in_owner = true unique_name_in_owner = true
libraries = { libraries = {
@@ -219,3 +211,11 @@ FloorName = 4
[node name="Final Floor" type="Node" parent="MapOrder"] [node name="Final Floor" type="Node" parent="MapOrder"]
script = ExtResource("3_v14r0") script = ExtResource("3_v14r0")
FloorName = 6 FloorName = 6
[node name="ColorRect" type="ColorRect" parent="."]
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
color = Color(0, 0, 0, 1)

View File

@@ -25,33 +25,33 @@ public partial class Altar : SpecialFloor, IDungeonFloor
public void OnResolved() public void OnResolved()
{ {
Show(); Show();
Exit.AreaEntered += Exit_AreaEntered; Exit.AreaEntered += Exit_AreaEntered;
NoExitArea.AreaEntered += NoExitArea_AreaEntered; NoExitArea.AreaEntered += NoExitArea_AreaEntered;
FloorIsLoaded = true; FloorIsLoaded = true;
} }
private void _player_PointUpFinished() private void _player_PointUpFinished()
{ {
_player.Activate(); _player.Activate();
} }
private void NoExitArea_AreaEntered(Area3D area) private void NoExitArea_AreaEntered(Area3D area)
{ {
DialogueController.ShowDialogue(Dialogue, "no_exit"); DialogueController.ShowDialogue(Dialogue, "no_exit");
} }
private void Exit_AreaEntered(Area3D area) private void Exit_AreaEntered(Area3D area)
{ {
if (area.GetOwner() is IPlayer) if (area.GetOwner() is IPlayer)
ExitReached(); ExitReached();
} }
public void ExitReached() => Game.FloorExitReached(); public void ExitReached() => Game.FloorExitReached();
public void OnExitTree() public void OnExitTree()
{ {
Exit.AreaEntered -= Exit_AreaEntered; Exit.AreaEntered -= Exit_AreaEntered;
NoExitArea.AreaEntered -= NoExitArea_AreaEntered; NoExitArea.AreaEntered -= NoExitArea_AreaEntered;
} }
} }

View File

@@ -18,16 +18,16 @@ public partial class FinalFloor : SpecialFloor
public void OnReady() public void OnReady()
{ {
Exit.AreaEntered += Exit_AreaEntered; Exit.AreaEntered += Exit_AreaEntered;
} }
private void Exit_AreaEntered(Area3D area) private void Exit_AreaEntered(Area3D area)
{ {
_player.Die(); _player.Die();
} }
public void OnExitTree() public void OnExitTree()
{ {
Exit.AreaEntered -= Exit_AreaEntered; Exit.AreaEntered -= Exit_AreaEntered;
} }
} }

View File

@@ -19,54 +19,54 @@ public partial class MonsterRoom : DungeonRoom
public override void _Ready() public override void _Ready()
{ {
SpawnItems(); SpawnItems();
} }
public void SpawnEnemies(Godot.Collections.Dictionary<EnemyType, float> enemyInfo) public void SpawnEnemies(Godot.Collections.Dictionary<EnemyType, float> enemyInfo)
{ {
if (enemyInfo == null || !enemyInfo.Any(x => x.Value > 0)) if (enemyInfo == null || !enemyInfo.Any(x => x.Value > 0))
return; return;
var rng = new RandomNumberGenerator(); var rng = new RandomNumberGenerator();
rng.Randomize(); rng.Randomize();
var enemySpawnPoints = EnemySpawnPoints.GetChildren(); var enemySpawnPoints = EnemySpawnPoints.GetChildren();
var numberOfEnemiesToSpawn = rng.RandiRange(1, enemySpawnPoints.Count); var numberOfEnemiesToSpawn = rng.RandiRange(1, enemySpawnPoints.Count);
foreach (var spawnPoint in enemySpawnPoints.Cast<Marker3D>()) foreach (var spawnPoint in enemySpawnPoints.Cast<Marker3D>())
{ {
if (numberOfEnemiesToSpawn <= 0) if (numberOfEnemiesToSpawn <= 0)
break; break;
numberOfEnemiesToSpawn--; numberOfEnemiesToSpawn--;
var index = rng.RandWeighted([.. enemyInfo.Values]); var index = rng.RandWeighted([.. enemyInfo.Values]);
var selectedEnemy = enemyInfo.ElementAt((int)index); var selectedEnemy = enemyInfo.ElementAt((int)index);
var instantiatedEnemy = EnemyTypeToEnemyConverter.Convert(selectedEnemy.Key); var instantiatedEnemy = EnemyTypeToEnemyConverter.Convert(selectedEnemy.Key);
instantiatedEnemy.Position = new Vector3(spawnPoint.Position.X, 0f, spawnPoint.Position.Z); instantiatedEnemy.Position = new Vector3(spawnPoint.Position.X, 0f, spawnPoint.Position.Z);
AddChild(instantiatedEnemy); AddChild(instantiatedEnemy);
} }
} }
private void SpawnItems() private void SpawnItems()
{ {
if (ItemSpawnPoints == null) if (ItemSpawnPoints == null)
return; return;
var itemSpawnPoints = ItemSpawnPoints.GetChildren(); var itemSpawnPoints = ItemSpawnPoints.GetChildren();
var rng = new RandomNumberGenerator(); var rng = new RandomNumberGenerator();
rng.Randomize(); rng.Randomize();
var numberOfItemsToSpawn = rng.RandiRange(1, itemSpawnPoints.Count); var numberOfItemsToSpawn = rng.RandiRange(1, itemSpawnPoints.Count);
itemSpawnPoints.Shuffle(); itemSpawnPoints.Shuffle();
var database = ItemDatabase.Instance; var database = ItemDatabase.Instance;
foreach (var spawnPoint in itemSpawnPoints.Cast<Marker3D>()) foreach (var spawnPoint in itemSpawnPoints.Cast<Marker3D>())
{ {
if (numberOfItemsToSpawn <= 0) if (numberOfItemsToSpawn <= 0)
break; break;
numberOfItemsToSpawn--; numberOfItemsToSpawn--;
var selectedItem = database.PickItem<InventoryItem>(); var selectedItem = database.PickItem<IBaseInventoryItem>() as Node3D;
var duplicated = selectedItem.Duplicate((int)DuplicateFlags.UseInstantiation) as Node3D; var duplicated = selectedItem.Duplicate((int)DuplicateFlags.UseInstantiation) as Node3D;
duplicated.Position = new Vector3(spawnPoint.Position.X, 0, spawnPoint.Position.Z); duplicated.Position = new Vector3(spawnPoint.Position.X, 0, spawnPoint.Position.Z);
AddChild(duplicated); AddChild(duplicated);
} }
} }
} }

File diff suppressed because one or more lines are too long

View File

@@ -1,4 +1,4 @@
[gd_scene load_steps=11 format=3 uid="uid://cyrrhoarhxlhg"] [gd_scene load_steps=13 format=3 uid="uid://cyrrhoarhxlhg"]
[ext_resource type="Script" uid="uid://r8mpxyum31ds" path="res://src/map/dungeon/code/FinalFloor.cs" id="1_b2jrf"] [ext_resource type="Script" uid="uid://r8mpxyum31ds" path="res://src/map/dungeon/code/FinalFloor.cs" id="1_b2jrf"]
[ext_resource type="PackedScene" uid="uid://dpd2y8evtea1t" path="res://src/map/dungeon/models/Special Floors & Rooms/36. Final Floor/36_A2_FINAL_FLOOR_VER.0.1.glb" id="2_b2jrf"] [ext_resource type="PackedScene" uid="uid://dpd2y8evtea1t" path="res://src/map/dungeon/models/Special Floors & Rooms/36. Final Floor/36_A2_FINAL_FLOOR_VER.0.1.glb" id="2_b2jrf"]
@@ -10,10 +10,10 @@ size = Vector3(0.0974121, 15.1811, 23.3886)
size = Vector3(0.0974121, 15.1811, 27.7427) size = Vector3(0.0974121, 15.1811, 27.7427)
[sub_resource type="BoxShape3D" id="BoxShape3D_s4mfk"] [sub_resource type="BoxShape3D" id="BoxShape3D_s4mfk"]
size = Vector3(187.628, 118.514, 12.5598) size = Vector3(234.085, 118.514, 12.5598)
[sub_resource type="BoxShape3D" id="BoxShape3D_170vw"] [sub_resource type="BoxShape3D" id="BoxShape3D_170vw"]
size = Vector3(187.874, 144.552, 13.4706) size = Vector3(235.028, 144.552, 13.4706)
[sub_resource type="BoxShape3D" id="BoxShape3D_ajpkj"] [sub_resource type="BoxShape3D" id="BoxShape3D_ajpkj"]
size = Vector3(281.18, 0.081543, 80.3693) size = Vector3(281.18, 0.081543, 80.3693)
@@ -27,6 +27,23 @@ size = Vector3(19.394, 30.059, 2.88283)
[sub_resource type="BoxShape3D" id="BoxShape3D_b2jrf"] [sub_resource type="BoxShape3D" id="BoxShape3D_b2jrf"]
size = Vector3(12.9663, 20.8418, 50.175) size = Vector3(12.9663, 20.8418, 50.175)
[sub_resource type="Environment" id="Environment_b2jrf"]
background_mode = 1
ambient_light_energy = 0.0
sdfgi_enabled = true
glow_enabled = true
glow_intensity = 1.57
glow_strength = 1.36
glow_bloom = 1.0
glow_blend_mode = 0
volumetric_fog_enabled = true
volumetric_fog_albedo = Color(0.830335, 0.830335, 0.830335, 1)
[sub_resource type="CameraAttributesPractical" id="CameraAttributesPractical_hojso"]
exposure_multiplier = 1.354
dof_blur_far_enabled = true
dof_blur_far_distance = 371.47
[node name="Final Floor" type="Node3D"] [node name="Final Floor" type="Node3D"]
script = ExtResource("1_b2jrf") script = ExtResource("1_b2jrf")
@@ -53,12 +70,12 @@ transform = Transform3D(-4.37114e-08, 0, 1, 0, 1, 0, -1, 0, -4.37114e-08, -3.576
shape = SubResource("BoxShape3D_djk74") shape = SubResource("BoxShape3D_djk74")
[node name="CollisionShape3D4" type="CollisionShape3D" parent="Collisions/StaticBody3D"] [node name="CollisionShape3D4" type="CollisionShape3D" parent="Collisions/StaticBody3D"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -110.065, -2.28188, -12.327) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -133.294, -2.28188, -12.327)
shape = SubResource("BoxShape3D_s4mfk") shape = SubResource("BoxShape3D_s4mfk")
debug_color = Color(0, 0.6, 0.701961, 1) debug_color = Color(0, 0.6, 0.701961, 1)
[node name="CollisionShape3D5" type="CollisionShape3D" parent="Collisions/StaticBody3D"] [node name="CollisionShape3D5" type="CollisionShape3D" parent="Collisions/StaticBody3D"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -110.065, -15.2228, 10.4977) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -133.642, -15.2228, 10.4977)
shape = SubResource("BoxShape3D_170vw") shape = SubResource("BoxShape3D_170vw")
[node name="CollisionShape3D6" type="CollisionShape3D" parent="Collisions/StaticBody3D"] [node name="CollisionShape3D6" type="CollisionShape3D" parent="Collisions/StaticBody3D"]
@@ -66,7 +83,7 @@ transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -110.065, -3.09368, -8.33632)
shape = SubResource("BoxShape3D_ajpkj") shape = SubResource("BoxShape3D_ajpkj")
[node name="CollisionShape3D7" type="CollisionShape3D" parent="Collisions/StaticBody3D"] [node name="CollisionShape3D7" type="CollisionShape3D" parent="Collisions/StaticBody3D"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -226.104, -1.21697, -3.54719) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -255.62, -1.21697, -3.54719)
shape = SubResource("BoxShape3D_pdgpv") shape = SubResource("BoxShape3D_pdgpv")
[node name="CollisionShape3D8" type="CollisionShape3D" parent="Collisions/StaticBody3D"] [node name="CollisionShape3D8" type="CollisionShape3D" parent="Collisions/StaticBody3D"]
@@ -91,5 +108,17 @@ collision_layer = 0
collision_mask = 64 collision_mask = 64
[node name="CollisionShape3D" type="CollisionShape3D" parent="Room/Exit"] [node name="CollisionShape3D" type="CollisionShape3D" parent="Room/Exit"]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -222.237, -3.35156, 3.78481) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -257.108, -3.35156, 3.78481)
shape = SubResource("BoxShape3D_b2jrf") shape = SubResource("BoxShape3D_b2jrf")
[node name="WorldEnvironment" type="WorldEnvironment" parent="."]
environment = SubResource("Environment_b2jrf")
camera_attributes = SubResource("CameraAttributesPractical_hojso")
[node name="DirectionalLight3D" type="DirectionalLight3D" parent="WorldEnvironment"]
transform = Transform3D(0.85896, -0.300971, 0.414251, 0, -0.809017, -0.587785, 0.512043, 0.504884, -0.694913, 0, 0, 0)
light_color = Color(0.204372, 0.420196, 1, 1)
light_energy = 4.435
shadow_enabled = true
[editable path="Model/36_A2_FINAL_FLOOR_VER_0_2"]

View File

@@ -0,0 +1,38 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://c1eip3nh46fy0"
path.bptc="res://.godot/imported/36_A2_FINAL_FLOOR_VER.0_normal_opengl.png-19d807bda1d6515f9683734aa2231482.bptc.ctex"
metadata={
"imported_formats": ["s3tc_bptc"],
"vram_texture": true
}
generator_parameters={
"md5": "00b94bfeae1634510fa43553cce9c0fb"
}
[deps]
source_file="res://src/map/dungeon/models/Special Floors & Rooms/36. Final Floor/36_A2_FINAL_FLOOR_VER.0_normal_opengl.png"
dest_files=["res://.godot/imported/36_A2_FINAL_FLOOR_VER.0_normal_opengl.png-19d807bda1d6515f9683734aa2231482.bptc.ctex"]
[params]
compress/mode=2
compress/high_quality=true
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=1
compress/channel_pack=0
mipmaps/generate=true
mipmaps/limit=-1
roughness/mode=1
roughness/src_normal="res://src/map/dungeon/models/Special Floors & Rooms/36. Final Floor/36_A2_FINAL_FLOOR_VER.0_normal_opengl.png"
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=0

View File

@@ -0,0 +1,38 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://ch4cjvuay2edg"
path.bptc="res://.godot/imported/36_A2_FINAL_FLOOR_VER.0_roughness.png-03b3a9d966651fcef8eae7c32f126fae.bptc.ctex"
metadata={
"imported_formats": ["s3tc_bptc"],
"vram_texture": true
}
generator_parameters={
"md5": "634f7d6ce3b2d5f17052a0abff3585b5"
}
[deps]
source_file="res://src/map/dungeon/models/Special Floors & Rooms/36. Final Floor/36_A2_FINAL_FLOOR_VER.0_roughness.png"
dest_files=["res://.godot/imported/36_A2_FINAL_FLOOR_VER.0_roughness.png-03b3a9d966651fcef8eae7c32f126fae.bptc.ctex"]
[params]
compress/mode=2
compress/high_quality=true
compress/lossy_quality=0.7
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=true
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=0

View File

@@ -1398,7 +1398,8 @@ omni_range = 19.166
omni_attenuation = 1.106 omni_attenuation = 1.106
[node name="E symbol!" type="MeshInstance3D" parent="."] [node name="E symbol!" type="MeshInstance3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -0.216361, 10.8155) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.550282, 10.8155)
visible = false
layers = 2 layers = 2
cast_shadow = 0 cast_shadow = 0
mesh = SubResource("PlaneMesh_l1s1j") mesh = SubResource("PlaneMesh_l1s1j")

View File

@@ -675,6 +675,7 @@ autoplay = "Flame Flicker"
[node name="E symbol!" type="MeshInstance3D" parent="."] [node name="E symbol!" type="MeshInstance3D" parent="."]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -0.469518, 10.8155) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -0.469518, 10.8155)
visible = false
layers = 2 layers = 2
mesh = SubResource("PlaneMesh_vsgtq") mesh = SubResource("PlaneMesh_vsgtq")

Some files were not shown because too many files have changed in this diff Show More