Saturday, 31 January 2026 01:00:43

This commit is contained in:
2026-01-31 01:00:45 -05:00
parent d9d33f9758
commit 672e91d381
38 changed files with 374 additions and 424 deletions

66
Gameplay/Shield.cs Normal file
View File

@@ -0,0 +1,66 @@
using Godot;
using System;
using System.Diagnostics;
using System.Runtime.CompilerServices;
public partial class Shield : TextureButton
{
public bool _isHovered = false, _isPressed = false, _isDisabled = false, _isFocused = false, _locked = false, _destroyed = false, _broken = false;
public int _address, _durability;
public Enemy _owner, _tenant;
public Actor _marker;
public Sprite2D _regularMark, _brokenMark;
public Board _board;
public override void _Ready()
{
_regularMark = GetNode<Sprite2D>("RegularMark");
_brokenMark = GetNode<Sprite2D>("BrokenMark");
_durability = 100;
}
public override void _Pressed()
{
base._Pressed();
_owner.ClickShield(this);
}
public override void _Process(double DELTA)
{
base._Process(DELTA);
}
public void Break()
{
_broken = true;
TextureNormal = TexturePressed = TextureHover = TextureDisabled = TextureFocused = _brokenMark.Texture;
}
public void ChangeHealth(int CHANGE_AMOUNT)
{
_durability += CHANGE_AMOUNT;
if (!_broken)
{
if (_durability <= 0)
{
Break();
}
}
}
public void Disable(bool DISABLED)
{
SetProcess(!DISABLED);
}
// public void Mark(Actor MARKER = null)
// {
// _marker = MARKER;
// TextureNormal = (MARKER == null ? _defaultMark : MARKER._markNormal).Texture;
// TexturePressed = (MARKER == null ? _defaultMark : MARKER._markPressed).Texture;
// TextureHover = (MARKER == null ? _defaultMark : MARKER._markHovered).Texture;
// TextureDisabled = (MARKER == null ? _defaultMark : MARKER._markDisabled).Texture;
// TextureFocused = (MARKER == null ? _defaultMark : MARKER._markFocused).Texture;
// }
}