-
Notifications
You must be signed in to change notification settings - Fork 8
Expand file tree
/
Copy pathWeapon.cs
More file actions
71 lines (66 loc) · 1.8 KB
/
Copy pathWeapon.cs
File metadata and controls
71 lines (66 loc) · 1.8 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
using System;
using System.Collections.Generic;
namespace MHArmory.Core.DataStructures
{
public enum WeaponType
{
GreatSword,
LongSword,
SwordAndShield,
DualBlades,
Hammer,
HuntingHorn,
Lance,
Gunlance,
SwitchAxe,
ChargeBlade,
InsectGlaive,
LightBowgun,
HeavyBowgun,
Bow
}
public enum ElementType
{
Fire,
Water,
Thunder,
Ice,
Dragon,
Poison,
Sleep,
Paralysis,
Blast
}
public class Weapon : IEquipment
{
public int Id { get; }
public EquipmentType Type { get; } = EquipmentType.Weapon;
public WeaponType WeaponType { get; }
public Dictionary<string, string> Name { get; }
public int Rarity { get; }
public int[] Slots { get; }
public IAbility[] Abilities { get; }
public IEvent Event { get; }
public ICraftMaterial[] CraftMaterials { get; }
public IArmorSetSkill[] ArmorSetSkills { get; }
public Weapon(int id, WeaponType weaponType, int[] slots, IAbility[] abilities, IEvent evt, IArmorSetSkill[] armorSetSkills = null)
{
Id = id;
WeaponType = weaponType;
Slots = slots;
Abilities = abilities;
Event = evt;
ArmorSetSkills = armorSetSkills ?? Array.Empty<IArmorSetSkill>();
}
public Weapon(int id, Dictionary<string, string> name, WeaponType weaponType, int rarity, int[] slots, IAbility[] abilities, IEvent evt)
{
Id = id;
Name = name;
WeaponType = weaponType;
Rarity = rarity;
Slots = slots;
Abilities = abilities;
Event = evt;
}
}
}