Example #1
0
 public void Stop()
 {
     if (State != eCampaignCharacterState.Idle)
     {
         State = eCampaignCharacterState.Idle;
         LocomotionComponent.Stop();
     }
 }
Example #2
0
        public PlayerEntity(ISession session, CharacterDto dto, IEnumerable <CharacterSkillDto> skills, IEnumerable <CharacterQuicklistDto> quicklist) : base(VisualType.Character, dto.Id)
        {
            Session   = session;
            Character = dto;
            Relations = new RelationList();
            Quicklist = new QuicklistComponent(this, quicklist);

            HpMax     = Algorithm.GetHpMax(dto.Class, dto.Level);
            Hp        = HpMax;
            MpMax     = Algorithm.GetMpMax(dto.Class, dto.Level);
            Mp        = MpMax;
            BasicArea = 1;
            Inventory = new InventoryComponent(this);
            Movable   = new MovableComponent(this)
            {
                Actual = new Position <short>
                {
                    X = dto.MapX,
                    Y = dto.MapY
                },
                Destination = new Position <short>
                {
                    X = dto.MapX,
                    Y = dto.MapY
                }
            };
            _visibility    = new VisibilityComponent(this);
            SkillComponent = new SkillComponent(this, skills);
            Locomotion     = new LocomotionComponent(this);
            Components     = new Dictionary <Type, IComponent>
            {
                { typeof(VisibilityComponent), _visibility },
                { typeof(InventoryComponent), Inventory },
                { typeof(SkillComponent), SkillComponent },
                { typeof(LocomotionComponent), Locomotion }
            };
            Mates = new List <IMateEntity>();

            #region Stat

            Defence              = (short)Algorithm.GetDefenceClose(Character.Class, Level);
            DefenceDodge         = (short)Algorithm.GetDodgeClose(Character.Class, Level);
            DistanceDefence      = (short)Algorithm.GetDefenceRange(Character.Class, Level);
            DistanceDefenceDodge = (short)Algorithm.GetDodgeRanged(Character.Class, Level);
            MagicalDefence       = (short)Algorithm.GetDefenceMagic(Character.Class, Level);
            MinHit                 = (short)Algorithm.GetMinHit(Character.Class, Level);
            MaxHit                 = (short)Algorithm.GetMaxHit(Character.Class, Level);
            HitRate                = (byte)Algorithm.GetHitRate(Character.Class, Level);
            CriticalChance         = Algorithm.GetHitCritical(Character.Class, Level);
            CriticalRate           = (byte)Algorithm.GetHitCriticalRate(Character.Class, Level);
            DistanceCriticalChance = Algorithm.GetDistCritical(Character.Class, Level);
            DistanceCriticalRate   = Algorithm.GetDistCriticalRate(Character.Class, Level);

            #endregion Stat
        }
Example #3
0
    void InitComponents()
    {
        // make front component
        frontControl = AttachLeg(FrontSocket);
        // make back component
        backControl = AttachPiston(BackSocket);

        Driver driverComp = GetComponent<Driver>();

        if (driverComp != null)
        {
            driverComp.frontSwitch = frontControl;
            driverComp.backSwitch = backControl;
        }
    }
Example #4
0
    void InitComponents()
    {
        // make front component
        frontControl = AttachLeg(FrontSocket);
        // make back component
        backControl = AttachPiston(BackSocket);

        Driver driverComp = GetComponent <Driver>();

        if (driverComp != null)
        {
            driverComp.frontSwitch = frontControl;
            driverComp.backSwitch  = backControl;
        }
    }