protected override void _SetAbility(Entity.AbilitySet abilitys) { _MoverAbility = new ActorMoverAbility(_Property.Direction, _Property.Position.X, _Property.Position.Y); _MoverAbility.ActionEvent += _OnAction; _MoverAbility.PositionEvent += _OnPosition; abilitys.AttechAbility<IMoverAbility>(_MoverAbility); _QuadTreeObjectAbility = new PhysicalAbility(new Regulus.Types.Rect(_Property.Position.X - _BodyWidth / 2, _Property.Position.Y - _BodyHeight / 2, _BodyWidth, _BodyHeight), this); abilitys.AttechAbility<PhysicalAbility>(_QuadTreeObjectAbility); }
protected override void _SetAbility(Entity.AbilitySet abilitys) { _ObservedAbility = new PlayerObservedAbility(this, _DBActorInfomation); abilitys.AttechAbility<IObservedAbility>(_ObservedAbility); _ObserveAbility = new PlayerObserveAbility( _DBActorInfomation); abilitys.AttechAbility<IObserveAbility>(_ObserveAbility); _CrossAbility = new CrossAbility(); abilitys.AttechAbility<ICrossAbility>(_CrossAbility); _CrossAbility.MoveEvent += _CrossAbility_MoveEvent; base._SetAbility(abilitys); }
protected override void _SetAbility(Entity.AbilitySet abilitys) { abilitys.AttechAbility<PhysicalAbility>(_QuadTreeObjectAbility); abilitys.AttechAbility<IMoverAbility>(this); }
/// <summary> /// 設定功能 /// </summary> /// <param name="abilitys">現有功能Dict</param> protected override void _SetAbility(Entity.AbilitySet abilitys) { abilitys.AttechAbility<IObserveAbility>(this); }
/// <summary> /// 設定功能 /// </summary> /// <param name="abilitys">現有功能Dict</param> protected override void _SetAbility(Entity.AbilitySet abilitys) { _ObservedAbility = new PlayerObservedAbility(this, _DBActorInfomation); abilitys.AttechAbility<IObservedAbility>(_ObservedAbility); _ObserveAbility = new PlayerObserveAbility( _DBActorInfomation); abilitys.AttechAbility<IObserveAbility>(_ObserveAbility); _CrossAbility = new CrossAbility(); abilitys.AttechAbility<ICrossAbility>(_CrossAbility); if(_DBActorInfomation.Property.Identity == Serializable.EntityPropertyInfomation.IDENTITY.CONVERSATION) { _TeacherAbility = new Session.StuffTeacher(this); abilitys.AttechAbility<Session.StuffTeacher>(_TeacherAbility); } _StudentAbility = new Session.StuffStudent(this); abilitys.AttechAbility<Session.StuffStudent>(_StudentAbility); base._SetAbility(abilitys); }
/// <summary> /// 設定功能 /// </summary> /// <param name="abilitys">現有功能Dict</param> protected override void _SetAbility(Entity.AbilitySet abilitys) { _MoverAbility = new ActorMoverAbility2(_Property.Direction, _Property.Position.X, _Property.Position.Y); _MoverAbility.ActionEvent += _OnAction; _MoverAbility.PositionEvent += _OnPosition; abilitys.AttechAbility<IMoverAbility>(_MoverAbility); _QuadTreeObjectAbility = new PhysicalAbility(new Regulus.CustomType.Rect(_Property.Position.X - _BodyWidth / 2, _Property.Position.Y - _BodyHeight / 2, _BodyWidth, _BodyHeight), this); abilitys.AttechAbility<PhysicalAbility>(_QuadTreeObjectAbility); abilitys.AttechAbility<IBehaviorAbility>(_Behavior); abilitys.AttechAbility<IBehaviorCommandAbility>(_Behavior); abilitys.AttechAbility<IActorPropertyAbility>(_PropertyAbility); abilitys.AttechAbility<IActorUpdateAbility>(_PropertyAbility); abilitys.AttechAbility<ISkillCaptureAbility>(_PropertyAbility); }