Collaborative changes
This commit is contained in:
@@ -113,6 +113,7 @@ public enum SoundEffect
|
||||
TurnAllEnemiesIntoHealingItems,
|
||||
WeaponQuickSlash,
|
||||
WeaponSlowSlash,
|
||||
WeaponPlasmaSword
|
||||
WeaponPlasmaSword,
|
||||
Eucharistia,
|
||||
}
|
||||
|
||||
|
||||
@@ -3,12 +3,12 @@
|
||||
importer="oggvorbisstr"
|
||||
type="AudioStreamOggVorbis"
|
||||
uid="uid://cgk17d8erskht"
|
||||
path="res://.godot/imported/amb_ocean.ogg-01a11020be2db82b0e22d1423cb26aa3.oggvorbisstr"
|
||||
path="res://.godot/imported/amb_ocean.ogg-f4ee3d30caf9194f7881a02c6507d38a.oggvorbisstr"
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://src/audio/amb/amb_ocean.ogg"
|
||||
dest_files=["res://.godot/imported/amb_ocean.ogg-01a11020be2db82b0e22d1423cb26aa3.oggvorbisstr"]
|
||||
source_file="res://src/audio/AMB/amb_ocean.ogg"
|
||||
dest_files=["res://.godot/imported/amb_ocean.ogg-f4ee3d30caf9194f7881a02c6507d38a.oggvorbisstr"]
|
||||
|
||||
[params]
|
||||
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -1,15 +1,27 @@
|
||||
using Chickensoft.AutoInject;
|
||||
using Chickensoft.Introspection;
|
||||
using Godot;
|
||||
using System.Linq;
|
||||
using Zennysoft.Game.Ma;
|
||||
using Zennysoft.Ma.Adapter;
|
||||
|
||||
[Meta(typeof(IAutoNode))]
|
||||
public partial class EdenPillarModelView : EnemyModelView3D
|
||||
{
|
||||
public override void _Notification(int what) => this.Notify(what);
|
||||
|
||||
[Dependency] protected IPlayer _player => this.DependOn(() => GetParent().GetChildren().OfType<IPlayer>().Single());
|
||||
|
||||
[Node] public Node3D Pivot { get; set; }
|
||||
|
||||
public new void OnReady()
|
||||
{
|
||||
SetPhysicsProcess(true);
|
||||
}
|
||||
|
||||
public void OnPhysicsProcess(double delta)
|
||||
{
|
||||
var rotationAngle = GetRotationAngle(Pivot);
|
||||
}
|
||||
|
||||
public override void PlayHitAnimation()
|
||||
@@ -21,4 +33,12 @@ public partial class EdenPillarModelView : EnemyModelView3D
|
||||
{
|
||||
_animationPlayer.Play("defeated");
|
||||
}
|
||||
|
||||
private float GetRotationAngle(Node3D rotationNode)
|
||||
{
|
||||
var target = new Vector3(_player.GlobalPosition.X, Position.Y, _player.GlobalPosition.Z);
|
||||
rotationNode.LookAt(target, Vector3.Up, true);
|
||||
rotationNode.RotateY(Rotation.Y);
|
||||
return rotationNode.Rotation.Y;
|
||||
}
|
||||
}
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -552,7 +552,6 @@ _data = {
|
||||
[sub_resource type="SphereShape3D" id="SphereShape3D_5g3vy"]
|
||||
|
||||
[node name="EdenProjectile" type="RigidBody3D"]
|
||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0)
|
||||
collision_layer = 0
|
||||
gravity_scale = 0.0
|
||||
contact_monitor = true
|
||||
@@ -570,7 +569,7 @@ texture_filter = 0
|
||||
render_priority = 100
|
||||
sprite_frames = SubResource("SpriteFrames_sqw6w")
|
||||
autoplay = "default"
|
||||
frame_progress = 0.924353
|
||||
frame_progress = 0.692412
|
||||
|
||||
[node name="Area3D" type="Area3D" parent="Bullet/AnimatedSprite3D"]
|
||||
unique_name_in_owner = true
|
||||
|
||||
@@ -472,7 +472,7 @@ public partial class Game : Node3D, IGame
|
||||
case ItemTag.DamagesPlayer:
|
||||
_effectService.DamagesPlayer(boxItem.Stats.DamageToPlayer);
|
||||
InventoryEventNotification.Invoke($"{boxItem.Stats.DamageToPlayer} damage done to self.");
|
||||
await ToSignal(GetTree().CreateTimer(2f), "timeout");
|
||||
await ToSignal(GetTree().CreateTimer(0.5f), "timeout");
|
||||
GameRepo.CloseInventory();
|
||||
break;
|
||||
case ItemTag.ContainsAccessory:
|
||||
@@ -560,15 +560,39 @@ public partial class Game : Node3D, IGame
|
||||
foreach (var item in _player.Inventory.Items.ToList())
|
||||
ThrowItem(item);
|
||||
_player.Inventory.Items.Clear();
|
||||
InventoryEventNotification.Invoke($"All items have been ejected from inventory.");
|
||||
await ToSignal(GetTree().CreateTimer(2f), "timeout");
|
||||
GameRepo.CloseInventory();
|
||||
BroadcastMessage($"All items have been ejected from inventory.");
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
private void EnactConsumableItemEffects(ConsumableItem consumableItem)
|
||||
{
|
||||
|
||||
if (consumableItem.HealHPAmount > 0 && consumableItem.HealVTAmount > 0)
|
||||
{
|
||||
SfxDatabase.Instance.Play(SoundEffect.Eucharistia);
|
||||
|
||||
if (_player.HealthComponent.AtFullHealth && _player.VTComponent.AtFullVT)
|
||||
{
|
||||
_player.HealthComponent.RaiseMaximumHP(consumableItem.RaiseHPAmount, true);
|
||||
_player.VTComponent.RaiseMaximumVT(consumableItem.RaiseVTAmount, true);
|
||||
InventoryEventNotification.Invoke($"Raised maximum HP by {consumableItem.RaiseHPAmount}." + System.Environment.NewLine + $"Raised maximum VT by {consumableItem.RaiseVTAmount}.");
|
||||
}
|
||||
else
|
||||
{
|
||||
_player.HealthComponent.Heal(consumableItem.HealHPAmount);
|
||||
_player.VTComponent.Restore(consumableItem.HealVTAmount);
|
||||
InventoryEventNotification.Invoke($"Restored {consumableItem.RaiseHPAmount}HP." + System.Environment.NewLine + $"Restored {consumableItem.RaiseVTAmount}VT.");
|
||||
}
|
||||
if (_player.StatusEffectComponent.Rust.Value)
|
||||
{
|
||||
_player.StatusEffectComponent.Reset();
|
||||
InventoryEventNotification.Invoke($"All status afflictments have faded.");
|
||||
}
|
||||
return;
|
||||
}
|
||||
|
||||
if (_player.HealthComponent.AtFullHealth && consumableItem.RaiseHPAmount > 0)
|
||||
{
|
||||
_player.HealthComponent.RaiseMaximumHP(consumableItem.RaiseHPAmount, true);
|
||||
@@ -586,13 +610,13 @@ public partial class Game : Node3D, IGame
|
||||
var currentHP = _player.HealthComponent.CurrentHP;
|
||||
_player.HealthComponent.Heal(consumableItem.HealHPAmount);
|
||||
SfxDatabase.Instance.Play(SoundEffect.HealHP);
|
||||
InventoryEventNotification.Invoke($"Restored {consumableItem.HealHPAmount} HP.");
|
||||
InventoryEventNotification.Invoke($"Restored {consumableItem.HealHPAmount}HP.");
|
||||
}
|
||||
else if (consumableItem.HealVTAmount > 0)
|
||||
{
|
||||
_player.VTComponent.Restore(consumableItem.HealVTAmount);
|
||||
SfxDatabase.Instance.Play(SoundEffect.HealVT);
|
||||
InventoryEventNotification.Invoke($"Restored {consumableItem.HealVTAmount} VT.");
|
||||
InventoryEventNotification.Invoke($"Restored {consumableItem.HealVTAmount}VT.");
|
||||
}
|
||||
|
||||
if (consumableItem.Stats.HealsStatusAilments)
|
||||
@@ -607,78 +631,74 @@ public partial class Game : Node3D, IGame
|
||||
switch (effectItem.UsableItemTag)
|
||||
{
|
||||
case UsableItemTag.TeleportAllEnemiesToRoom:
|
||||
_effectService.TeleportEnemiesToCurrentRoom(GetTree().GetNodesInGroup("enemy").OfType<IEnemy>().ToList());
|
||||
_effectService.TeleportEnemiesToCurrentRoom([.. GetTree().GetNodesInGroup("enemy").OfType<IEnemy>()]);
|
||||
SfxDatabase.Instance.Play(SoundEffect.RecallEnemies);
|
||||
InventoryEventNotification.Invoke($"All enemies have been summoned.");
|
||||
await ToSignal(GetTree().CreateTimer(2f), "timeout");
|
||||
GameRepo.CloseInventory();
|
||||
BroadcastMessage($"All entities have been summoned.");
|
||||
_player.PlaySpellFX(SpellFXEnum.DivinityRecall);
|
||||
break;
|
||||
case UsableItemTag.KillHalfEnemiesInRoom:
|
||||
_effectService.KillHalfEnemiesInRoom();
|
||||
InventoryEventNotification.Invoke($"The balance has been achieved.");
|
||||
await ToSignal(GetTree().CreateTimer(2f), "timeout");
|
||||
GameRepo.CloseInventory();
|
||||
BroadcastMessage($"The balance has been achieved.");
|
||||
break;
|
||||
case UsableItemTag.TurnAllEnemiesIntoHealingItem:
|
||||
_effectService.TurnAllEnemiesInRoomIntoHealingItem();
|
||||
InventoryEventNotification.Invoke($"Enemies in current room have been converted.");
|
||||
await ToSignal(GetTree().CreateTimer(2f), "timeout");
|
||||
GameRepo.CloseInventory();
|
||||
BroadcastMessage($"Entities in current room have been converted.");
|
||||
break;
|
||||
case UsableItemTag.HealsAllInRoomToMaxHP:
|
||||
_effectService.HealAllEnemiesAndPlayerInRoomToFull();
|
||||
InventoryEventNotification.Invoke($"All present have been renewed.");
|
||||
await ToSignal(GetTree().CreateTimer(2f), "timeout");
|
||||
GameRepo.CloseInventory();
|
||||
BroadcastMessage($"All present have been renewed.");
|
||||
break;
|
||||
case UsableItemTag.AbsorbHPFromAllEnemiesInRoom:
|
||||
var hpAbsorbed = _effectService.AbsorbHPFromAllEnemiesInRoom();
|
||||
if (hpAbsorbed == 0)
|
||||
{
|
||||
InventoryEventNotification.Invoke($"No enemies present to absorb from or invalid location.");
|
||||
await ToSignal(GetTree().CreateTimer(2f), "timeout");
|
||||
GameRepo.CloseInventory();
|
||||
BroadcastMessage($"No entities present to absorb from or invalid location.");
|
||||
return;
|
||||
}
|
||||
_player.HealthComponent.Heal(hpAbsorbed);
|
||||
InventoryEventNotification.Invoke($"Enemies have surrendered {hpAbsorbed} to you.");
|
||||
await ToSignal(GetTree().CreateTimer(2f), "timeout");
|
||||
GameRepo.CloseInventory();
|
||||
BroadcastMessage($"Entities have surrendered {hpAbsorbed}HP to you.");
|
||||
_player.PlaySpellFX(SpellFXEnum.Kyuuketsuki);
|
||||
break;
|
||||
|
||||
case UsableItemTag.DealElementalDamageToAllEnemiesInRoom:
|
||||
_effectService.DealElementalDamageToAllEnemiesInRoom(effectItem.Stats.ElementalDamageType);
|
||||
InventoryEventNotification.Invoke($"All enemies present have taken {effectItem.Stats.ElementalDamageType} to you.");
|
||||
await ToSignal(GetTree().CreateTimer(2f), "timeout");
|
||||
GameRepo.CloseInventory();
|
||||
BroadcastMessage($"All entities present have taken {effectItem.Stats.ElementalDamageType} to you.");
|
||||
break;
|
||||
case UsableItemTag.SwapHPAndVT:
|
||||
_effectService.SwapHPandVT();
|
||||
InventoryEventNotification.Invoke($"HP and VT have been traded.");
|
||||
await ToSignal(GetTree().CreateTimer(2f), "timeout");
|
||||
GameRepo.CloseInventory();
|
||||
await ToSignal(GetTree().CreateTimer(0.5f), "timeout");
|
||||
break;
|
||||
case UsableItemTag.RaiseCurrentWeaponAttack:
|
||||
if (string.IsNullOrEmpty(_player.EquipmentComponent.EquippedWeapon.Value.ItemName))
|
||||
return;
|
||||
_effectService.RaiseCurrentWeaponAttack();
|
||||
InventoryEventNotification.Invoke($"{_player.EquipmentComponent.EquippedWeapon.Value}'s attack has risen by 1.");
|
||||
await ToSignal(GetTree().CreateTimer(0.5f), "timeout");
|
||||
break;
|
||||
case UsableItemTag.RaiseCurrentDefenseArmor:
|
||||
if (string.IsNullOrEmpty(_player.EquipmentComponent.EquippedArmor.Value.ItemName))
|
||||
return;
|
||||
_effectService.RaiseCurrentArmorDefense();
|
||||
InventoryEventNotification.Invoke($"{_player.EquipmentComponent.EquippedArmor.Value}'s defense has risen by 1.");
|
||||
await ToSignal(GetTree().CreateTimer(0.5f), "timeout");
|
||||
break;
|
||||
case UsableItemTag.RaiseLevel:
|
||||
_effectService.RaiseLevel();
|
||||
InventoryEventNotification.Invoke($"Level increased to {_player.ExperiencePointsComponent.Level.Value}");
|
||||
await ToSignal(GetTree().CreateTimer(0.5f), "timeout");
|
||||
break;
|
||||
case UsableItemTag.LowerLevel:
|
||||
_effectService.LowerLevel();
|
||||
InventoryEventNotification.Invoke($"Level decreased to {_player.ExperiencePointsComponent.Level.Value}");
|
||||
await ToSignal(GetTree().CreateTimer(0.5f), "timeout");
|
||||
break;
|
||||
case UsableItemTag.LowerCurrentDefenseArmor:
|
||||
if (string.IsNullOrEmpty(_player.EquipmentComponent.EquippedArmor.Value.ItemName))
|
||||
@@ -706,7 +726,7 @@ public partial class Game : Node3D, IGame
|
||||
InventoryEventNotification.Invoke($"Moved to exit room.");
|
||||
else
|
||||
InventoryEventNotification.Invoke($"Unable to locate exit room.");
|
||||
await ToSignal(GetTree().CreateTimer(2f), "timeout");
|
||||
await ToSignal(GetTree().CreateTimer(0.5f), "timeout");
|
||||
GameRepo.CloseInventory();
|
||||
break;
|
||||
case UsableItemTag.IncreaseAttack:
|
||||
|
||||
@@ -134,14 +134,12 @@ public class EffectService
|
||||
|
||||
public void RandomEffect()
|
||||
{
|
||||
var spells = _player.Inventory.Items.OfType<EffectItem>().Where(x => x.UsableItemTag != UsableItemTag.RandomEffect).ToList();
|
||||
if (spells.Count > 0)
|
||||
{
|
||||
var randomEffects = Enum.GetValues(typeof(UsableItemTag)).Cast<UsableItemTag>().Except([UsableItemTag.RandomEffect, UsableItemTag.None]).ToList();
|
||||
var rng = new RandomNumberGenerator();
|
||||
rng.Randomize();
|
||||
var index = rng.RandiRange(0, spells.Count - 1);
|
||||
_game.UseItem(spells[index]);
|
||||
}
|
||||
var index = rng.RandiRange(0, randomEffects.Count - 1);
|
||||
var randomItem = new EffectItem() { Stats = new EffectItemStats() { UsableItemTag = randomEffects[index], BonusAttack = 1, BonusDefense = 1, BonusLuck = 10 } };
|
||||
_game.UseItem(randomItem);
|
||||
}
|
||||
|
||||
public void DoubleExp()
|
||||
|
||||
@@ -12,7 +12,7 @@ _igneousResistance = 0.0
|
||||
_ferrumResistance = 0.0
|
||||
_holyResistance = 0.0
|
||||
_curseResistance = 0.0
|
||||
ArmorTag = 0
|
||||
ArmorTag = 1
|
||||
Name = "Holy Barrier"
|
||||
StatDescription = "Loses 1 DEF every time the wearer is hit."
|
||||
FlavorText = "Armor from a country of renowned spell casters.
|
||||
|
||||
@@ -1,13 +1,15 @@
|
||||
using Chickensoft.AutoInject;
|
||||
using Chickensoft.Collections;
|
||||
using Chickensoft.Introspection;
|
||||
using Chickensoft.Serialization;
|
||||
using Godot;
|
||||
using Zennysoft.Game.Implementation;
|
||||
using Zennysoft.Ma.Adapter;
|
||||
|
||||
namespace Zennysoft.Game.Ma;
|
||||
|
||||
[Meta(typeof(IAutoNode)), Id("effect_item")]
|
||||
public partial class EffectItem : Node3D, IBaseInventoryItem
|
||||
public partial class EffectItem : Node3D, IBaseInventoryItem, IStackable
|
||||
{
|
||||
public override void _Notification(int what) => this.Notify(what);
|
||||
|
||||
@@ -16,6 +18,7 @@ public partial class EffectItem : Node3D, IBaseInventoryItem
|
||||
public override void _Ready()
|
||||
{
|
||||
_sprite.Texture = Stats.Texture;
|
||||
Count = new AutoProp<int>(Stats.InitialCount);
|
||||
}
|
||||
|
||||
public string ItemName => Stats.Name;
|
||||
@@ -41,5 +44,9 @@ public partial class EffectItem : Node3D, IBaseInventoryItem
|
||||
[Save("effect_item_stats")]
|
||||
public EffectItemStats Stats { get; set; } = new EffectItemStats();
|
||||
|
||||
[Save("ammo_item_count")]
|
||||
public AutoProp<int> Count { get; private set; } = new AutoProp<int>(3);
|
||||
|
||||
public Texture2D GetTexture() => Stats.Texture;
|
||||
public void SetCount(int count) => Count.OnNext(count);
|
||||
}
|
||||
|
||||
@@ -17,4 +17,8 @@ public partial class EffectItemStats : InventoryItemStats
|
||||
[Export]
|
||||
[Save("effect_item_element")]
|
||||
public ElementType ElementalDamageType { get; set; }
|
||||
|
||||
[Export]
|
||||
[Save("effect_item_initial_count")]
|
||||
public int InitialCount { get; set; } = 0;
|
||||
}
|
||||
|
||||
@@ -7,6 +7,7 @@
|
||||
script = ExtResource("2_7dbb6")
|
||||
UsableItemTag = 17
|
||||
ElementalDamageType = 0
|
||||
InitialCount = 3
|
||||
Name = "Spell Sign: Ablution"
|
||||
StatDescription = "Lowers user or target to 1 HP."
|
||||
FlavorText = "A spell that induces extreme vulnerability and a return to a purer state.
|
||||
|
||||
@@ -7,6 +7,7 @@
|
||||
script = ExtResource("2_n24ed")
|
||||
UsableItemTag = 33
|
||||
ElementalDamageType = 0
|
||||
InitialCount = 1
|
||||
Name = "Spell Sign: Anamnesis"
|
||||
StatDescription = "Randomly identifies one held unidentified item."
|
||||
FlavorText = "A spell that traverses the metaphysical tree of genetic memory in search of answers.
|
||||
|
||||
@@ -7,6 +7,7 @@
|
||||
script = ExtResource("2_7c6oa")
|
||||
UsableItemTag = 27
|
||||
ElementalDamageType = 0
|
||||
InitialCount = 1
|
||||
Name = "Spell Sign: Cell Degradation"
|
||||
StatDescription = "Lowers all stats."
|
||||
FlavorText = "A spell for breaking down one's enemies on a cellular level.
|
||||
|
||||
@@ -7,6 +7,7 @@
|
||||
script = ExtResource("2_o41ik")
|
||||
UsableItemTag = 11
|
||||
ElementalDamageType = 0
|
||||
InitialCount = 1
|
||||
Name = "Spell Sign: Cloth Resolution"
|
||||
StatDescription = "Raises the effectiveness of currently equipped armor."
|
||||
FlavorText = "A spell for strengthening armor.
|
||||
|
||||
@@ -7,6 +7,7 @@
|
||||
script = ExtResource("2_n1557")
|
||||
UsableItemTag = 13
|
||||
ElementalDamageType = 0
|
||||
InitialCount = 1
|
||||
Name = "Spell Sign: Cosmos"
|
||||
StatDescription = "Increases the users level."
|
||||
FlavorText = "A summoning spell that draws energy from the harmony of the solar system in order to bolster one's soul.
|
||||
|
||||
@@ -0,0 +1,29 @@
|
||||
[gd_resource type="Resource" script_class="JewelStats" load_steps=3 format=3 uid="uid://c60ej6ce8s1ox"]
|
||||
|
||||
[ext_resource type="Texture2D" uid="uid://esqaln68twiw" path="res://src/items/Icons/Unidentified Item.png" id="1_ne34t"]
|
||||
[ext_resource type="Script" uid="uid://btikba31yb0tl" path="res://src/items/jewels/JewelStats.cs" id="2_nwwms"]
|
||||
|
||||
[resource]
|
||||
script = ExtResource("2_nwwms")
|
||||
JewelTag = 0
|
||||
Name = "Unidentified Jewel"
|
||||
StatDescription = ""
|
||||
FlavorText = ""
|
||||
SpawnRate = 0.15
|
||||
BonusAttack = 0
|
||||
BonusDefense = 0
|
||||
BonusLuck = 0
|
||||
BonusHP = 0
|
||||
BonusVT = 0
|
||||
AeolicResistance = 0
|
||||
TelluricResistance = 0
|
||||
HydricResistance = 0
|
||||
IgneousResistance = 0
|
||||
FerrumResistance = 0
|
||||
HolyResistance = 0
|
||||
CurseResistance = 0
|
||||
ThrowSpeed = 12.0
|
||||
ThrowDamage = 5
|
||||
ItemTag = 2
|
||||
Texture = ExtResource("1_ne34t")
|
||||
metadata/_custom_type_script = "uid://btikba31yb0tl"
|
||||
32
Zennysoft.Game.Ma/src/items/weapons/resources/Joyeuse.tres
Normal file
32
Zennysoft.Game.Ma/src/items/weapons/resources/Joyeuse.tres
Normal file
@@ -0,0 +1,32 @@
|
||||
[gd_resource type="Resource" script_class="WeaponStats" load_steps=3 format=3 uid="uid://b3t6govsnap4p"]
|
||||
|
||||
[ext_resource type="Texture2D" uid="uid://dfpc2ighwlxjk" path="res://src/items/weapons/textures/joyeuse.png" id="1_yuqyb"]
|
||||
[ext_resource type="Script" uid="uid://cc7byqeolw5y4" path="res://src/items/weapons/WeaponStats.cs" id="2_fr8u4"]
|
||||
|
||||
[resource]
|
||||
script = ExtResource("2_fr8u4")
|
||||
AttackSpeed = 1.0
|
||||
WeaponElement = 3
|
||||
WeaponTag = 0
|
||||
SelfDamage = 0
|
||||
SoundEffect = 23
|
||||
Name = "Joyeuse"
|
||||
StatDescription = "Attacks twice."
|
||||
FlavorText = "Placeholder text, something about blade found in the midst of a devil's whirlpool"
|
||||
SpawnRate = 0.008
|
||||
BonusAttack = 6
|
||||
BonusDefense = 0
|
||||
BonusLuck = 5
|
||||
BonusHP = 0
|
||||
BonusVT = 0
|
||||
AeolicResistance = 0
|
||||
TelluricResistance = 0
|
||||
HydricResistance = 0
|
||||
IgneousResistance = 0
|
||||
FerrumResistance = 0
|
||||
HolyResistance = 0
|
||||
CurseResistance = 0
|
||||
ThrowSpeed = 12.0
|
||||
ThrowDamage = 5
|
||||
ItemTag = 0
|
||||
Texture = ExtResource("1_yuqyb")
|
||||
@@ -3,7 +3,7 @@
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://bl4xempufmgr5"
|
||||
path.bptc="res://.godot/imported/PALM OF HEAVEN.PNG-35554a412a9c4bc09647efa86e6b581e.bptc.ctex"
|
||||
path.bptc="res://.godot/imported/palm of heaven.png-8afcb54f797720ff29f3c00c68c0f579.bptc.ctex"
|
||||
metadata={
|
||||
"imported_formats": ["s3tc_bptc"],
|
||||
"vram_texture": true
|
||||
@@ -11,8 +11,8 @@ metadata={
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://src/items/weapons/textures/PALM OF HEAVEN.PNG"
|
||||
dest_files=["res://.godot/imported/PALM OF HEAVEN.PNG-35554a412a9c4bc09647efa86e6b581e.bptc.ctex"]
|
||||
source_file="res://src/items/weapons/textures/palm of heaven.png"
|
||||
dest_files=["res://.godot/imported/palm of heaven.png-8afcb54f797720ff29f3c00c68c0f579.bptc.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
|
||||
38
Zennysoft.Game.Ma/src/map/assets/gossip_stele.png.import
Normal file
38
Zennysoft.Game.Ma/src/map/assets/gossip_stele.png.import
Normal file
@@ -0,0 +1,38 @@
|
||||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://ctqq1mno0dr5i"
|
||||
path.bptc="res://.godot/imported/gossip_stele.png-ed5ae96280085586f545cfcd8b22a0ec.bptc.ctex"
|
||||
metadata={
|
||||
"imported_formats": ["s3tc_bptc"],
|
||||
"vram_texture": true
|
||||
}
|
||||
generator_parameters={
|
||||
"md5": "ff59a608ede4fdbedd3064233dea6cd3"
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://src/map/assets/gossip_stele.png"
|
||||
dest_files=["res://.godot/imported/gossip_stele.png-ed5ae96280085586f545cfcd8b22a0ec.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
|
||||
@@ -3,7 +3,7 @@
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://cp0er3xxxjkr5"
|
||||
path="res://.godot/imported/a2-puer_AREA_2_MAIN_222STONE.png-139f243ac630853348798dfe584da1e0.ctex"
|
||||
path="res://.godot/imported/A2-Puer_AREA_2_MAIN_222STONE.png-992459ef9849c39922a9b9e0c7774a4a.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
@@ -13,8 +13,8 @@ generator_parameters={
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://src/map/dungeon/models/Area 2/Puer/a2-puer_AREA_2_MAIN_222STONE.png"
|
||||
dest_files=["res://.godot/imported/a2-puer_AREA_2_MAIN_222STONE.png-139f243ac630853348798dfe584da1e0.ctex"]
|
||||
source_file="res://src/map/dungeon/models/Area 2/Puer/A2-Puer_AREA_2_MAIN_222STONE.png"
|
||||
dest_files=["res://.godot/imported/A2-Puer_AREA_2_MAIN_222STONE.png-992459ef9849c39922a9b9e0c7774a4a.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://5r16swvuqjjg"
|
||||
path="res://.godot/imported/a2-puer_AREA_2_MAIN_STONE.png-986249227e569ea1e40b4825b7f05c47.ctex"
|
||||
path="res://.godot/imported/A2-Puer_AREA_2_MAIN_STONE.png-2267bd7e464cdc2e03c8954de01941bf.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
@@ -13,8 +13,8 @@ generator_parameters={
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://src/map/dungeon/models/Area 2/Puer/a2-puer_AREA_2_MAIN_STONE.png"
|
||||
dest_files=["res://.godot/imported/a2-puer_AREA_2_MAIN_STONE.png-986249227e569ea1e40b4825b7f05c47.ctex"]
|
||||
source_file="res://src/map/dungeon/models/Area 2/Puer/A2-Puer_AREA_2_MAIN_STONE.png"
|
||||
dest_files=["res://.godot/imported/A2-Puer_AREA_2_MAIN_STONE.png-2267bd7e464cdc2e03c8954de01941bf.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://cvnpxln2mmtkp"
|
||||
path="res://.godot/imported/a2-puer_COLUMN_WHITE.png-0b80d510851319464b2ef729d8868892.ctex"
|
||||
path="res://.godot/imported/A2-Puer_COLUMN_WHITE.png-18037c22b966bb159d05cb7acac1bc53.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
@@ -13,8 +13,8 @@ generator_parameters={
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://src/map/dungeon/models/Area 2/Puer/a2-puer_COLUMN_WHITE.png"
|
||||
dest_files=["res://.godot/imported/a2-puer_COLUMN_WHITE.png-0b80d510851319464b2ef729d8868892.ctex"]
|
||||
source_file="res://src/map/dungeon/models/Area 2/Puer/A2-Puer_COLUMN_WHITE.png"
|
||||
dest_files=["res://.godot/imported/A2-Puer_COLUMN_WHITE.png-18037c22b966bb159d05cb7acac1bc53.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://tjtjbktl51kd"
|
||||
path="res://.godot/imported/a2-puer_GREENBIT.png-e1ed395f917a2fe57ed6288185af0729.ctex"
|
||||
path="res://.godot/imported/A2-Puer_GREENBIT.png-40a9ca6a0efc569a5f329f19b3c3e572.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
@@ -13,8 +13,8 @@ generator_parameters={
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://src/map/dungeon/models/Area 2/Puer/a2-puer_GREENBIT.png"
|
||||
dest_files=["res://.godot/imported/a2-puer_GREENBIT.png-e1ed395f917a2fe57ed6288185af0729.ctex"]
|
||||
source_file="res://src/map/dungeon/models/Area 2/Puer/A2-Puer_GREENBIT.png"
|
||||
dest_files=["res://.godot/imported/A2-Puer_GREENBIT.png-40a9ca6a0efc569a5f329f19b3c3e572.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://dqfdyguq83bhs"
|
||||
path="res://.godot/imported/a2-puer_M13_14.png-ed8b29b0af1c2b973bfaee62e57cab14.ctex"
|
||||
path="res://.godot/imported/A2-Puer_M13_14.png-e781478f15895763a566a64ff37db311.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
@@ -13,8 +13,8 @@ generator_parameters={
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://src/map/dungeon/models/Area 2/Puer/a2-puer_M13_14.png"
|
||||
dest_files=["res://.godot/imported/a2-puer_M13_14.png-ed8b29b0af1c2b973bfaee62e57cab14.ctex"]
|
||||
source_file="res://src/map/dungeon/models/Area 2/Puer/A2-Puer_M13_14.png"
|
||||
dest_files=["res://.godot/imported/A2-Puer_M13_14.png-e781478f15895763a566a64ff37db311.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://dorqwrqy03rim"
|
||||
path="res://.godot/imported/a2-puer_M13_49.png-86429b5a3cd80a9159f32ded99a631bc.ctex"
|
||||
path="res://.godot/imported/A2-Puer_M13_49.png-44faadb5ae300e9ecea145cfe1949536.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
@@ -13,8 +13,8 @@ generator_parameters={
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://src/map/dungeon/models/Area 2/Puer/a2-puer_M13_49.png"
|
||||
dest_files=["res://.godot/imported/a2-puer_M13_49.png-86429b5a3cd80a9159f32ded99a631bc.ctex"]
|
||||
source_file="res://src/map/dungeon/models/Area 2/Puer/A2-Puer_M13_49.png"
|
||||
dest_files=["res://.godot/imported/A2-Puer_M13_49.png-44faadb5ae300e9ecea145cfe1949536.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://nl3bwenfa8fi"
|
||||
path="res://.godot/imported/a2-puer_RUBBLE_1.png-c7185e2aad2613007d1951f1515ef882.ctex"
|
||||
path="res://.godot/imported/A2-Puer_RUBBLE_1.png-72d7ff861d1df58d800502546da8d607.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
@@ -13,8 +13,8 @@ generator_parameters={
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://src/map/dungeon/models/Area 2/Puer/a2-puer_RUBBLE_1.png"
|
||||
dest_files=["res://.godot/imported/a2-puer_RUBBLE_1.png-c7185e2aad2613007d1951f1515ef882.ctex"]
|
||||
source_file="res://src/map/dungeon/models/Area 2/Puer/A2-Puer_RUBBLE_1.png"
|
||||
dest_files=["res://.godot/imported/A2-Puer_RUBBLE_1.png-72d7ff861d1df58d800502546da8d607.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://0p6suo7fpxum"
|
||||
path="res://.godot/imported/a2-puer_STUCCO_DECAL_BIG.png-882b477f490f6ddbf5bffb3a6f8904e1.ctex"
|
||||
path="res://.godot/imported/A2-Puer_STUCCO_DECAL_BIG.png-015d9f8dd06372231a1f422979d3604e.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
@@ -13,8 +13,8 @@ generator_parameters={
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://src/map/dungeon/models/Area 2/Puer/a2-puer_STUCCO_DECAL_BIG.png"
|
||||
dest_files=["res://.godot/imported/a2-puer_STUCCO_DECAL_BIG.png-882b477f490f6ddbf5bffb3a6f8904e1.ctex"]
|
||||
source_file="res://src/map/dungeon/models/Area 2/Puer/A2-Puer_STUCCO_DECAL_BIG.png"
|
||||
dest_files=["res://.godot/imported/A2-Puer_STUCCO_DECAL_BIG.png-015d9f8dd06372231a1f422979d3604e.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://ct3mkni0v0y3g"
|
||||
path="res://.godot/imported/a2-puer_Tile 4.png-9d089a32db3fc38a0c5dee6cdb6d3495.ctex"
|
||||
path="res://.godot/imported/A2-Puer_Tile 4.png-0cfd085ec5fcea35eb2d1373e4717f77.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
@@ -13,8 +13,8 @@ generator_parameters={
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://src/map/dungeon/models/Area 2/Puer/a2-puer_Tile 4.png"
|
||||
dest_files=["res://.godot/imported/a2-puer_Tile 4.png-9d089a32db3fc38a0c5dee6cdb6d3495.ctex"]
|
||||
source_file="res://src/map/dungeon/models/Area 2/Puer/A2-Puer_Tile 4.png"
|
||||
dest_files=["res://.godot/imported/A2-Puer_Tile 4.png-0cfd085ec5fcea35eb2d1373e4717f77.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://b40fbcriycpp5"
|
||||
path="res://.godot/imported/a2-puer_imag2esnormal.jpg-d6e063b2785344af34fa3bb45d47aa2f.ctex"
|
||||
path="res://.godot/imported/A2-Puer_imag2esnormal.jpg-be023c8af9ff59eedfb3ede232c75195.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
@@ -13,8 +13,8 @@ generator_parameters={
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://src/map/dungeon/models/Area 2/Puer/a2-puer_imag2esnormal.jpg"
|
||||
dest_files=["res://.godot/imported/a2-puer_imag2esnormal.jpg-d6e063b2785344af34fa3bb45d47aa2f.ctex"]
|
||||
source_file="res://src/map/dungeon/models/Area 2/Puer/A2-Puer_imag2esnormal.jpg"
|
||||
dest_files=["res://.godot/imported/A2-Puer_imag2esnormal.jpg-be023c8af9ff59eedfb3ede232c75195.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://b25r6gysyhu3e"
|
||||
path="res://.godot/imported/a2-puer_inner_rock2.png-943622742770f7b55d1e40645d07d057.ctex"
|
||||
path="res://.godot/imported/A2-Puer_inner_rock2.png-7c99975de214e5dddd3507f87212b910.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
@@ -13,8 +13,8 @@ generator_parameters={
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://src/map/dungeon/models/Area 2/Puer/a2-puer_inner_rock2.png"
|
||||
dest_files=["res://.godot/imported/a2-puer_inner_rock2.png-943622742770f7b55d1e40645d07d057.ctex"]
|
||||
source_file="res://src/map/dungeon/models/Area 2/Puer/A2-Puer_inner_rock2.png"
|
||||
dest_files=["res://.godot/imported/A2-Puer_inner_rock2.png-7c99975de214e5dddd3507f87212b910.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://cw4hq3kofjowa"
|
||||
path="res://.godot/imported/a2-puer_lime_hand_relief.png-85b73e808337e8b8841453cbda0e78cd.ctex"
|
||||
path="res://.godot/imported/A2-Puer_lime_hand_relief.png-825857ea33249fe0361c829ba37bbfdb.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
@@ -13,8 +13,8 @@ generator_parameters={
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://src/map/dungeon/models/Area 2/Puer/a2-puer_lime_hand_relief.png"
|
||||
dest_files=["res://.godot/imported/a2-puer_lime_hand_relief.png-85b73e808337e8b8841453cbda0e78cd.ctex"]
|
||||
source_file="res://src/map/dungeon/models/Area 2/Puer/A2-Puer_lime_hand_relief.png"
|
||||
dest_files=["res://.godot/imported/A2-Puer_lime_hand_relief.png-825857ea33249fe0361c829ba37bbfdb.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://bqrsde28o867s"
|
||||
path="res://.godot/imported/a2-puer_mother_GREEN.png-7bb7d8dd57027953ba1e08ed0c256c8b.ctex"
|
||||
path="res://.godot/imported/A2-Puer_mother_GREEN.png-ba1f3d21981ed19fc5cc87868e04808c.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
@@ -13,8 +13,8 @@ generator_parameters={
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://src/map/dungeon/models/Area 2/Puer/a2-puer_mother_GREEN.png"
|
||||
dest_files=["res://.godot/imported/a2-puer_mother_GREEN.png-7bb7d8dd57027953ba1e08ed0c256c8b.ctex"]
|
||||
source_file="res://src/map/dungeon/models/Area 2/Puer/A2-Puer_mother_GREEN.png"
|
||||
dest_files=["res://.godot/imported/A2-Puer_mother_GREEN.png-ba1f3d21981ed19fc5cc87868e04808c.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://4aq3a26dliyg"
|
||||
path="res://.godot/imported/a2-puer_swirled_column _AREA222.png-6f90c188eae5b7e81110f39984d5d43f.ctex"
|
||||
path="res://.godot/imported/A2-Puer_swirled_column _AREA222.png-4842b180cffdbc0274ecb9cbbbbc8221.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
@@ -13,8 +13,8 @@ generator_parameters={
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://src/map/dungeon/models/Area 2/Puer/a2-puer_swirled_column _AREA222.png"
|
||||
dest_files=["res://.godot/imported/a2-puer_swirled_column _AREA222.png-6f90c188eae5b7e81110f39984d5d43f.ctex"]
|
||||
source_file="res://src/map/dungeon/models/Area 2/Puer/A2-Puer_swirled_column _AREA222.png"
|
||||
dest_files=["res://.godot/imported/A2-Puer_swirled_column _AREA222.png-4842b180cffdbc0274ecb9cbbbbc8221.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
|
||||
@@ -666,14 +666,6 @@ public partial class Player : CharacterBody3D, IPlayer, IProvide<IPlayer>
|
||||
|
||||
PlayAttackAnimation();
|
||||
|
||||
if (PlayerIsHittingGeometry())
|
||||
{
|
||||
await ToSignal(GetTree().CreateTimer(0.15f), "timeout");
|
||||
WeaponAnimations.Stop();
|
||||
WeaponAnimations.Play("Hit Wall");
|
||||
return;
|
||||
}
|
||||
|
||||
if (weapon.WeaponTag == WeaponTag.DegradeOnSwing)
|
||||
_playerEffectService.Degrade();
|
||||
else if (weapon.WeaponTag == WeaponTag.SelfDamage)
|
||||
|
||||
@@ -27,8 +27,12 @@ public partial class InventoryMenu : Control, IInventoryMenu
|
||||
|
||||
[Node] public Label ItemStats { get; set; }
|
||||
|
||||
[Node] public Label Augment { get; set; }
|
||||
|
||||
[Node] public Label ItemAugment { get; set; }
|
||||
|
||||
[Node] public Label ItemAugmentTitle { get; set; }
|
||||
|
||||
[Node] public TextureRect ItemAugmentTexture { get; set; }
|
||||
|
||||
[Node] public ActionPanel ActionPanel { get; set; }
|
||||
@@ -149,7 +153,9 @@ public partial class InventoryMenu : Control, IInventoryMenu
|
||||
ItemStats.Text = selectedItem.Item.Value.StatDescription;
|
||||
ItemStats.Visible = !string.IsNullOrEmpty(ItemStats.Text);
|
||||
ItemAugmentTexture.Texture = null;
|
||||
Augment.Text = GetAugmentSubtitle(selectedItem.Item.Value);
|
||||
ItemAugment.Text = GetAugmentText(selectedItem.Item.Value);
|
||||
ItemAugmentTitle.Text = GetAugmentTitleText(selectedItem.Item.Value);
|
||||
}
|
||||
|
||||
private void ResetInventoryState()
|
||||
@@ -178,7 +184,7 @@ public partial class InventoryMenu : Control, IInventoryMenu
|
||||
ItemActionResultContainer.Show();
|
||||
ItemActionResultContainer.GrabFocus();
|
||||
ItemActionResultLabel.Text = obj;
|
||||
await ToSignal(GetTree().CreateTimer(2f), "timeout");
|
||||
await ToSignal(GetTree().CreateTimer(1f), "timeout");
|
||||
ItemActionResultContainer.Hide();
|
||||
ItemActionResultLabel.Text = string.Empty;
|
||||
_blocking = false;
|
||||
@@ -240,6 +246,56 @@ public partial class InventoryMenu : Control, IInventoryMenu
|
||||
}
|
||||
|
||||
private string GetAugmentText(IBaseInventoryItem item)
|
||||
{
|
||||
if (item is IAugmentableItem augmentable && augmentable.Augment != null)
|
||||
{
|
||||
ItemAugmentTexture.Texture = augmentable.Augment.AugmentTexture;
|
||||
return $"{augmentable.Augment.AugmentDescription}";
|
||||
}
|
||||
|
||||
return string.Empty;
|
||||
}
|
||||
|
||||
private string GetAugmentSubtitle(IBaseInventoryItem item)
|
||||
{
|
||||
if (item is IAugmentableItem augmentable && augmentable.Augment != null)
|
||||
{
|
||||
return $"Augment";
|
||||
}
|
||||
|
||||
return string.Empty;
|
||||
}
|
||||
|
||||
private string GetAugmentTitleText(IBaseInventoryItem item)
|
||||
{
|
||||
if (item is IAugmentableItem augmentable && augmentable.Augment != null)
|
||||
return $"{augmentable.Augment.AugmentName}";
|
||||
return string.Empty;
|
||||
}
|
||||
|
||||
private string GetAugmentText(Weapon item)
|
||||
{
|
||||
if (item is IAugmentableItem augmentable && augmentable.Augment != null)
|
||||
{
|
||||
ItemAugmentTexture.Texture = augmentable.Augment.AugmentTexture;
|
||||
return $"{augmentable.Augment.AugmentName}{System.Environment.NewLine}{augmentable.Augment.AugmentDescription}";
|
||||
}
|
||||
|
||||
return string.Empty;
|
||||
}
|
||||
|
||||
private string GetAugmentText(Armor item)
|
||||
{
|
||||
if (item is IAugmentableItem augmentable && augmentable.Augment != null)
|
||||
{
|
||||
ItemAugmentTexture.Texture = augmentable.Augment.AugmentTexture;
|
||||
return $"{augmentable.Augment.AugmentName}{System.Environment.NewLine}{augmentable.Augment.AugmentDescription}";
|
||||
}
|
||||
|
||||
return string.Empty;
|
||||
}
|
||||
|
||||
private string GetAugmentText(Accessory item)
|
||||
{
|
||||
if (item is IAugmentableItem augmentable && augmentable.Augment != null)
|
||||
{
|
||||
|
||||
File diff suppressed because one or more lines are too long
@@ -1,7 +1,7 @@
|
||||
[gd_scene load_steps=7 format=3 uid="uid://c005nd0m2eim"]
|
||||
|
||||
[ext_resource type="Script" uid="uid://cglxk7v8hpesn" path="res://src/ui/inventory_menu/ItemSlot.cs" id="1_yttxt"]
|
||||
[ext_resource type="Texture2D" uid="uid://c4m6m3pv8704k" path="res://src/items/weapons/textures/kubel.png" id="3_t6dim"]
|
||||
[ext_resource type="Texture2D" uid="uid://c4m6m3pv8704k" path="res://src/items/weapons/textures/KUBEL.PNG" id="3_t6dim"]
|
||||
[ext_resource type="StyleBox" uid="uid://bxuy4tnftibfq" path="res://src/options/SelectedOptionsBox.tres" id="4_lt1pw"]
|
||||
[ext_resource type="StyleBox" uid="uid://bl15q835s4ene" path="res://src/options/UnselectedOptionsBox.tres" id="4_rf22b"]
|
||||
[ext_resource type="FontFile" uid="uid://0syyay37admf" path="res://src/ui/fonts/georgiab.ttf" id="4_t6dim"]
|
||||
@@ -35,6 +35,7 @@ vertical_alignment = 1
|
||||
|
||||
[node name="ItemTexture" type="TextureRect" parent="ItemInfo"]
|
||||
unique_name_in_owner = true
|
||||
texture_filter = 2
|
||||
custom_minimum_size = Vector2(50, 50)
|
||||
layout_mode = 2
|
||||
texture = ExtResource("3_t6dim")
|
||||
@@ -69,7 +70,8 @@ text = "Cross Sword"
|
||||
|
||||
[node name="AugmentTexture" type="TextureRect" parent="ItemInfo/Control"]
|
||||
unique_name_in_owner = true
|
||||
custom_minimum_size = Vector2(50, 50)
|
||||
texture_filter = 2
|
||||
custom_minimum_size = Vector2(30, 30)
|
||||
layout_mode = 2
|
||||
size_flags_horizontal = 4
|
||||
size_flags_vertical = 4
|
||||
|
||||
File diff suppressed because one or more lines are too long
Reference in New Issue
Block a user