Beispiel #1
0
    // Start is called before the first frame update
    void Start()
    {
        SelfAbilitySystem = GetComponent <GameplayAbilitySystem.AbilitySystemComponent>();

        // Grant all abilities to character, for now
        var em = World.Active.EntityManager;

        foreach (KeyValuePair <EAbility, Type> entry in AbilitySystemComponent.Abilities)
        {
            var entity = em.CreateEntity();
            em.AddComponent(entity, entry.Value);
            em.AddComponent(entity, typeof(GrantedAbilityComponent));
            em.AddComponent(entity, typeof(GrantedAbilityCooldownComponent));
            em.AddComponent(entity, typeof(AbilityComponent));
            em.SetComponentData(entity, new GrantedAbilityComponent()
            {
                GrantedTo = SelfAbilitySystem.entity
            });
            em.SetComponentData(entity, new AbilityComponent()
            {
                Ability = entry.Key
            });
        }
    }
 // Start is called before the first frame update
 void Start()
 {
     SelfAbilitySystem = GetComponent <GameplayAbilitySystem.AbilitySystemComponent>();
 }