Add initial resource and presenter classes for game entities and effects
This commit is contained in:
10
Code/Resources/ArchetypeDatabase.cs
Normal file
10
Code/Resources/ArchetypeDatabase.cs
Normal file
@@ -0,0 +1,10 @@
|
||||
using Godot;
|
||||
using Godot.Collections;
|
||||
|
||||
namespace CryptonymThunder.Code.Resources;
|
||||
|
||||
[GlobalClass]
|
||||
public partial class ArchetypeDatabase : Resource
|
||||
{
|
||||
[Export] public Dictionary<string, EntityArchetype> Archetypes { get; set; } = new();
|
||||
}
|
||||
1
Code/Resources/ArchetypeDatabase.cs.uid
Normal file
1
Code/Resources/ArchetypeDatabase.cs.uid
Normal file
@@ -0,0 +1 @@
|
||||
uid://df10ksb6f0pjt
|
||||
10
Code/Resources/AttributeComponentResource.cs
Normal file
10
Code/Resources/AttributeComponentResource.cs
Normal file
@@ -0,0 +1,10 @@
|
||||
using Godot;
|
||||
using Attribute = GameCore.Attributes.Attribute;
|
||||
|
||||
namespace CryptonymThunder.Code.Resources;
|
||||
|
||||
[GlobalClass]
|
||||
public partial class AttributeComponentResource : Resource
|
||||
{
|
||||
[Export] public Godot.Collections.Dictionary<Attribute, float> BaseValues { get; set; } = new();
|
||||
}
|
||||
1
Code/Resources/AttributeComponentResource.cs.uid
Normal file
1
Code/Resources/AttributeComponentResource.cs.uid
Normal file
@@ -0,0 +1 @@
|
||||
uid://dc7wq2ij5kwj5
|
||||
9
Code/Resources/CharacterStateComponentResource.cs
Normal file
9
Code/Resources/CharacterStateComponentResource.cs
Normal file
@@ -0,0 +1,9 @@
|
||||
using Godot;
|
||||
|
||||
namespace CryptonymThunder.Code.Resources;
|
||||
|
||||
[GlobalClass]
|
||||
public partial class CharacterStateComponentResource : Resource
|
||||
{
|
||||
|
||||
}
|
||||
1
Code/Resources/CharacterStateComponentResource.cs.uid
Normal file
1
Code/Resources/CharacterStateComponentResource.cs.uid
Normal file
@@ -0,0 +1 @@
|
||||
uid://cdpbn8eiypfbd
|
||||
9
Code/Resources/EffectResource.cs
Normal file
9
Code/Resources/EffectResource.cs
Normal file
@@ -0,0 +1,9 @@
|
||||
using Godot;
|
||||
|
||||
namespace CryptonymThunder.Code.Resources;
|
||||
|
||||
[GlobalClass]
|
||||
public partial class EffectResource : Resource
|
||||
{
|
||||
|
||||
}
|
||||
1
Code/Resources/EffectResource.cs.uid
Normal file
1
Code/Resources/EffectResource.cs.uid
Normal file
@@ -0,0 +1 @@
|
||||
uid://bdo6vrtrsr0an
|
||||
9
Code/Resources/Effects/DamageEffectResource.cs
Normal file
9
Code/Resources/Effects/DamageEffectResource.cs
Normal file
@@ -0,0 +1,9 @@
|
||||
using Godot;
|
||||
|
||||
namespace CryptonymThunder.Code.Resources.Effects;
|
||||
|
||||
[GlobalClass]
|
||||
public partial class DamageEffectResource : EffectResource
|
||||
{
|
||||
[Export] public float Amount { get; set; } = 10f;
|
||||
}
|
||||
1
Code/Resources/Effects/DamageEffectResource.cs.uid
Normal file
1
Code/Resources/Effects/DamageEffectResource.cs.uid
Normal file
@@ -0,0 +1 @@
|
||||
uid://btv24gsw1p850
|
||||
12
Code/Resources/Effects/FireProjectileEffectResource.cs
Normal file
12
Code/Resources/Effects/FireProjectileEffectResource.cs
Normal file
@@ -0,0 +1,12 @@
|
||||
using Godot;
|
||||
|
||||
namespace CryptonymThunder.Code.Resources.Effects;
|
||||
|
||||
[GlobalClass]
|
||||
public partial class FireProjectileEffectResource : EffectResource
|
||||
{
|
||||
[Export] public string ProjectileArchetypeId { get; set; }
|
||||
[Export(PropertyHint.Range, "1,50,1")] public int Count { get; set; } = 1;
|
||||
[Export(PropertyHint.Range, "0,90,0.1")] public float SpreadAngle { get; set; } = 0f;
|
||||
[Export] public float ProjectileSpeed { get; set; } = 30f;
|
||||
}
|
||||
@@ -0,0 +1 @@
|
||||
uid://cht6trljihvle
|
||||
9
Code/Resources/Effects/HitscanEffectResource.cs
Normal file
9
Code/Resources/Effects/HitscanEffectResource.cs
Normal file
@@ -0,0 +1,9 @@
|
||||
using Godot;
|
||||
|
||||
namespace CryptonymThunder.Code.Resources.Effects;
|
||||
|
||||
[GlobalClass]
|
||||
public partial class HitscanEffectResource : EffectResource
|
||||
{
|
||||
[Export] public float Range { get; set; } = 100f;
|
||||
}
|
||||
1
Code/Resources/Effects/HitscanEffectResource.cs.uid
Normal file
1
Code/Resources/Effects/HitscanEffectResource.cs.uid
Normal file
@@ -0,0 +1 @@
|
||||
uid://chc0d0rjcbl65
|
||||
11
Code/Resources/EntityArchetype.cs
Normal file
11
Code/Resources/EntityArchetype.cs
Normal file
@@ -0,0 +1,11 @@
|
||||
using Godot;
|
||||
using Godot.Collections;
|
||||
|
||||
namespace CryptonymThunder.Code.Resources;
|
||||
|
||||
[GlobalClass]
|
||||
public partial class EntityArchetype : Resource
|
||||
{
|
||||
[Export] public PackedScene Scene { get; set; }
|
||||
[Export] public Array<Resource> ComponentResources { get; set; } = [];
|
||||
}
|
||||
1
Code/Resources/EntityArchetype.cs.uid
Normal file
1
Code/Resources/EntityArchetype.cs.uid
Normal file
@@ -0,0 +1 @@
|
||||
uid://coe688e2jkyjq
|
||||
9
Code/Resources/InputStateComponentResource.cs
Normal file
9
Code/Resources/InputStateComponentResource.cs
Normal file
@@ -0,0 +1,9 @@
|
||||
using Godot;
|
||||
|
||||
namespace CryptonymThunder.Code.Resources;
|
||||
|
||||
[GlobalClass]
|
||||
public partial class InputStateComponentResource : Resource
|
||||
{
|
||||
|
||||
}
|
||||
1
Code/Resources/InputStateComponentResource.cs.uid
Normal file
1
Code/Resources/InputStateComponentResource.cs.uid
Normal file
@@ -0,0 +1 @@
|
||||
uid://y4cbuh2wxigy
|
||||
9
Code/Resources/PlayerComponentResource.cs
Normal file
9
Code/Resources/PlayerComponentResource.cs
Normal file
@@ -0,0 +1,9 @@
|
||||
using Godot;
|
||||
|
||||
namespace CryptonymThunder.Code.Resources;
|
||||
|
||||
[GlobalClass]
|
||||
public partial class PlayerComponentResource : Resource
|
||||
{
|
||||
|
||||
}
|
||||
1
Code/Resources/PlayerComponentResource.cs.uid
Normal file
1
Code/Resources/PlayerComponentResource.cs.uid
Normal file
@@ -0,0 +1 @@
|
||||
uid://p4vr80n70vkt
|
||||
9
Code/Resources/PositionComponentResource.cs
Normal file
9
Code/Resources/PositionComponentResource.cs
Normal file
@@ -0,0 +1,9 @@
|
||||
using Godot;
|
||||
|
||||
namespace CryptonymThunder.Code.Resources;
|
||||
|
||||
[GlobalClass]
|
||||
public partial class PositionComponentResource : Resource
|
||||
{
|
||||
|
||||
}
|
||||
1
Code/Resources/PositionComponentResource.cs.uid
Normal file
1
Code/Resources/PositionComponentResource.cs.uid
Normal file
@@ -0,0 +1 @@
|
||||
uid://df5wmj1jp2oy5
|
||||
10
Code/Resources/ProjectileComponentResource.cs
Normal file
10
Code/Resources/ProjectileComponentResource.cs
Normal file
@@ -0,0 +1,10 @@
|
||||
using Godot;
|
||||
|
||||
namespace CryptonymThunder.Code.Resources;
|
||||
|
||||
[GlobalClass]
|
||||
public partial class ProjectileComponentResource : Resource
|
||||
{
|
||||
[Export] public float Speed { get; set; } = 50.0f;
|
||||
[Export] public float Lifetime { get; set; } = 5.0f;
|
||||
}
|
||||
1
Code/Resources/ProjectileComponentResource.cs.uid
Normal file
1
Code/Resources/ProjectileComponentResource.cs.uid
Normal file
@@ -0,0 +1 @@
|
||||
uid://ddryrwjq33832
|
||||
9
Code/Resources/RotationComponentResource.cs
Normal file
9
Code/Resources/RotationComponentResource.cs
Normal file
@@ -0,0 +1,9 @@
|
||||
using Godot;
|
||||
|
||||
namespace CryptonymThunder.Code.Resources;
|
||||
|
||||
[GlobalClass]
|
||||
public partial class RotationComponentResource : Resource
|
||||
{
|
||||
|
||||
}
|
||||
1
Code/Resources/RotationComponentResource.cs.uid
Normal file
1
Code/Resources/RotationComponentResource.cs.uid
Normal file
@@ -0,0 +1 @@
|
||||
uid://blm62f85g7icn
|
||||
9
Code/Resources/SimulationConfigResource.cs
Normal file
9
Code/Resources/SimulationConfigResource.cs
Normal file
@@ -0,0 +1,9 @@
|
||||
using Godot;
|
||||
|
||||
namespace CryptonymThunder.Code.Resources;
|
||||
|
||||
[GlobalClass]
|
||||
public partial class SimulationConfigResource : Resource
|
||||
{
|
||||
[Export] public float GravityStrength { get; set; } = 9.81f;
|
||||
}
|
||||
1
Code/Resources/SimulationConfigResource.cs.uid
Normal file
1
Code/Resources/SimulationConfigResource.cs.uid
Normal file
@@ -0,0 +1 @@
|
||||
uid://uearpvfk21ym
|
||||
9
Code/Resources/VelocityComponentResource.cs
Normal file
9
Code/Resources/VelocityComponentResource.cs
Normal file
@@ -0,0 +1,9 @@
|
||||
using Godot;
|
||||
|
||||
namespace CryptonymThunder.Code.Resources;
|
||||
|
||||
[GlobalClass]
|
||||
public partial class VelocityComponentResource : Resource
|
||||
{
|
||||
|
||||
}
|
||||
1
Code/Resources/VelocityComponentResource.cs.uid
Normal file
1
Code/Resources/VelocityComponentResource.cs.uid
Normal file
@@ -0,0 +1 @@
|
||||
uid://t4j1urlupxxv
|
||||
9
Code/Resources/WeaponComponentResource.cs
Normal file
9
Code/Resources/WeaponComponentResource.cs
Normal file
@@ -0,0 +1,9 @@
|
||||
using Godot;
|
||||
|
||||
namespace CryptonymThunder.Code.Resources;
|
||||
|
||||
[GlobalClass]
|
||||
public partial class WeaponComponentResource : Resource
|
||||
{
|
||||
[Export] public WeaponResource WeaponData { get; set; }
|
||||
}
|
||||
1
Code/Resources/WeaponComponentResource.cs.uid
Normal file
1
Code/Resources/WeaponComponentResource.cs.uid
Normal file
@@ -0,0 +1 @@
|
||||
uid://bp7mufswr41w6
|
||||
14
Code/Resources/WeaponResource.cs
Normal file
14
Code/Resources/WeaponResource.cs
Normal file
@@ -0,0 +1,14 @@
|
||||
using GameCore.Combat;
|
||||
using Godot;
|
||||
|
||||
namespace CryptonymThunder.Code.Resources;
|
||||
|
||||
[GlobalClass]
|
||||
public partial class WeaponResource : Resource
|
||||
{
|
||||
[Export] public float FireRate { get; set; } = 1.0f;
|
||||
|
||||
[ExportGroup("Effects")]
|
||||
[Export] public Godot.Collections.Array<EffectResource> OnFireEffects { get; set; } = [];
|
||||
[Export] public Godot.Collections.Array<EffectResource> OnHitEffects { get; set; } = [];
|
||||
}
|
||||
1
Code/Resources/WeaponResource.cs.uid
Normal file
1
Code/Resources/WeaponResource.cs.uid
Normal file
@@ -0,0 +1 @@
|
||||
uid://hf0iut8o8do3
|
||||
Reference in New Issue
Block a user