adding different thins

This commit is contained in:
2026-03-27 09:20:21 +01:00
parent 94bd4d1f05
commit 650379e8f9
3 changed files with 37 additions and 3 deletions

View File

@@ -5,7 +5,7 @@ namespace PeopleVille.Extension.Mod1;
public class Snake : IEquipment public class Snake : IEquipment
{ {
public string Name { get; set; } = "Snake";
public void Equip() public void Equip()
{ {
throw new NotImplementedException(); throw new NotImplementedException();
@@ -21,3 +21,23 @@ public class Snake : IEquipment
Console.WriteLine($"{person.Name} brugte en slange, lol"); Console.WriteLine($"{person.Name} brugte en slange, lol");
} }
} }
public class Trumpet : IEquipment
{
public string Name { get; set; } = "Trumpet med 90 grader";
public void Equip()
{
throw new NotImplementedException();
}
public void Unequip()
{
throw new NotImplementedException();
}
public void Use(Person person)
{
Console.WriteLine($"{person.Name} brugte en trumpet, musik lyder i {person.CurrentLocation.Name}");
}
}

View File

@@ -19,8 +19,14 @@ namespace PeopleVille.Equipment
public void Use(Person target) public void Use(Person target)
{ {
target.Health -= this.Damage; try
Console.WriteLine($"{target.Name} er blevet skudt og mistede {Damage} liv"); {
target.Health -= this.Damage;
Console.WriteLine($"{target.Name} er blevet skudt og mistede {Damage} liv");
} catch
{
Console.WriteLine($"{target.Name} prøvede at skyde, men det virkede ikke, øv bøv");
}
} }
} }
} }

View File

@@ -109,9 +109,17 @@ namespace PeopleVille.WorldBuilder
{ {
var instances = new List<T>(); var instances = new List<T>();
string[] dlls = Directory.GetFiles(pathToAssemblyFolder, "*.dll"); string[] dlls = Directory.GetFiles(pathToAssemblyFolder, "*.dll");
var baseAssemblyName = typeof(T).Assembly.GetName().Name;
foreach (var dll in dlls) foreach (var dll in dlls)
{ {
var assemblyName = AssemblyName.GetAssemblyName(dll).Name;
if (string.Equals(assemblyName, baseAssemblyName, StringComparison.OrdinalIgnoreCase))
{
continue;
}
instances.AddRange(LoadTypesFromAssembly<T>(dll)); instances.AddRange(LoadTypesFromAssembly<T>(dll));
} }