Пример #1
0
 public CreatureFactory(IGroupLayout layout, string name, int moveDuration, int detectRange, int sightRange, int experience,
                        Texture2D texture, int woundFeet, int woundLegs, int woundTorso, int woundHead, int attack, int poisonAttack, CreatureAttackType attackType, bool attackAny, int attackTicks, int defense, int baseHealth, int dexterity, int poisonResistance, int fireResistance)
 {
     Layout           = layout;
     MoveDuration     = moveDuration;
     Texture          = texture;
     WoundFeet        = woundFeet;
     WoundLegs        = woundLegs;
     WoundTorso       = woundTorso;
     WoundHead        = woundHead;
     Attack           = attack;
     PoisonAttack     = poisonAttack;
     AttackType       = attackType;
     AttackAny        = attackAny;
     AttackTicks      = attackTicks;
     Defense          = defense;
     BaseHealth       = baseHealth;
     Dexterity        = dexterity;
     PoisonResistance = poisonResistance;
     FireResistance   = fireResistance;
     DetectRange      = detectRange;
     SightRange       = sightRange;
     Name             = name;
     Experience       = experience;
     PoisonAttack     = poisonAttack;
 }
Пример #2
0
        public Creature(IGroupLayout layout, ISpaceRouteElement location, RelationToken relationToken, IEnumerable <RelationToken> enemiesTokens, int moveDuration, int detectRange, int sightRange) : base(location.StayPoint)
        {
            GroupLayout       = layout;
            MoveDuration      = moveDuration;
            DetectRange       = detectRange;
            SightRange        = sightRange;
            watchAroungOrigin = location.Tile;

            if (!location.Tile.LayoutManager.TryGetSpace(this, location.Space))
            {
                throw new ArgumentException("Location is not accessable!");
            }

            ((ILocalizable <ISpaceRouteElement>) this).Location = location;
            RelationManager = new DefaultRelationManager(relationToken, enemiesTokens);
            ((CubeGraphic)Graphics).Texture = ResourceProvider.Instance.DrawRenderTarget("creature", Color.Red, Color.White);
        }
Пример #3
0
        public Creature(IGroupLayout layout, ISpaceRouteElement location, RelationToken relationToken, IEnumerable<RelationToken> enemiesTokens, int moveDuration, int detectRange, int sightRange) : base(location.StayPoint)
        {
            GroupLayout = layout;
            MoveDuration = moveDuration;
            DetectRange = detectRange;
            SightRange = sightRange;
            watchAroungOrigin = location.Tile;

            if (!location.Tile.LayoutManager.TryGetSpace(this, location.Space))
                throw new ArgumentException("Location is not accessable!");

            ((ILocalizable<ISpaceRouteElement>)this).Location = location;
            RelationManager = new DefaultRelationManager(relationToken, enemiesTokens);
            ((CubeGraphic) Graphics).Texture = ResourceProvider.Instance.DrawRenderTarget("creature", Color.Red, Color.White);
        }