/// <summary> /// Konstruktor kopiuj¹cy. /// </summary> /// <param name="shot">Obiekt wzorcowy.</param> public Shot(Shot shot) { _shotGraphic = shot._shotGraphic.Clone(); _shotType = shot._shotType; _speed = shot._speed; _shootEnemy = shot._shootEnemy; }
/// <summary> /// Konstruktor. /// </summary> /// <param name="enemyType">Typ wroga.</param> /// <param name="assetName">Nazwa zasobu grafiki wroga.</param> /// <param name="life">Liczba życia wroga.</param> /// <param name="strenght">Siła ataku.</param> /// <param name="speed">Prędkość będąca dzielnikiem liczby 42.</param> /// <param name="direction">Kierunek początkowego porusznia się.</param> /// <param name="isFreeze">Czy jest zatrzymany w miejscu.</param> /// <param name="evolve">Delegatura do funkcji ewolucji.</param> /// <param name="testMove">Delegatura do funkcji testowania ruchu.</param> /// <param name="webShoot">Delegatura do funkcji strzelania.</param> /// <param name="observe">Delegatura do funkcji obserwowania w poszukiwaniu robaczka.</param> /// <param name="attack">Delegatura do funckji ataku na robaczka.</param> public Enemy(EnemyType enemyType, string assetName, int?life, int strenght, int speed, Direction direction, bool isFreeze, EvolveDelegate evolve, TestMoveDelegate testMove, WebShootDelegate webShoot, ObserveDelegate observe, AttackDelegate attack) { _enemyType = enemyType; _life = life; _strenght = strenght; _speed = _startSpeed = speed; _slowEffectTime = 0; _elapsedSlowTime = 0; _direction = direction; _isFreeze = isFreeze; _freezeEffectTime = 0; _elapsedFreezeTime = 0; _enemyGraphic = new AnimatedGraphic(); _evolve = evolve; _testMove = testMove; _webShoot = webShoot; _observe = observe; _attack = attack; LoadContent(Window.Context.Content, assetName); _isKilled = false; _sawWorm = false; }
/// <summary> /// Konstruktor. /// Ustawia obiekt szczura na null oraz informację dotyczącą stanu otwarcia drzwi na false. /// </summary> /// <param name="enemies">Stos wrogów, jacy mają wychodzić przez drzwi.</param> /// <param name="timeToNextEnemie">Odstęp czasu jaki ma być między kolejnymi pojawieniami się wrogów.</param> public Door(Stack <Enemy> enemies, int timeToNextEnemie) { _doorGraphic = new AnimatedGraphic(); _enemiesToGenerate = enemies; _timeToNextEnemie = timeToNextEnemie; _rat = null; _areOpen = false; }
/// <summary> /// Konstruktor. /// </summary> /// <param name="shotType">Typ strza³u.</param> /// <param name="assetName">Œcie¿ka do zasobu grafiki strza³u.</param> /// <param name="shootEnemy">Funkcja zestrzelenia wroga.</param> public Shot(ShotType shotType, string assetName, ShootEnemy shootEnemy) { _shotType = shotType; _shotGraphic = new AnimatedGraphic(); _speed = 14; _shootSomething = false; LoadContent(Window.Context.Content, assetName); _shootEnemy = shootEnemy; }
/// <summary> /// Konstruktor kamienia. /// Nie porusza się, nie spada. /// Jego prędkość to 6. /// </summary> public Stone() { _stoneGraphic = new AnimatedGraphic(); _rectangle = new Rectangle(); _destination = new Point(); _isMoving = false; _speed = 6; _isShatter = false; _wasFalling = false; }
/// <summary> /// Konstruktor tworzący sakiewkę. /// Nie spada, nie jest roztrzaskana. Nie ma owocu. /// </summary> public Purse() { _purseGraphic = new AnimatedGraphic(); _rectangle = new Rectangle(); _destination = new Point(); _isMoving = false; _speed = 6; _fruit = null; _isShatter = false; _wasFalling = false; }
/// <summary> /// Konstruktor. /// Życie robaczka to 10. /// </summary> public Worm() { _wormGraphic = new AnimatedGraphic(); _framesCount = 0; _speed = _lastSpeed = 3; _redFruits = 0; _isDigging = false; _isMoving = false; _life = 10; _elapsedSpeedTime = 0; _speedEffectTime = 0; _isFreeze = false; }
/// <summary> /// Konstruktor. /// Jeżeli pole label zostanie ustawione button przestanie działać w trybie wyświetlania grafiki. /// Będzie wyświetlał i wykonywał operacje na tekście. /// </summary> /// <param name="navigationType">Typ klasy widoku, do którego ma nastąpić przekierowanie w razie zmiany stanu na kliknięto.</param> /// <param name="args">Parametry opcjonalne potrzebne do inicjowania obiektów widoków.</param> /// <param name="label">Tekst do trybu tekstowego buttona.</param> public Button(Type navigationType, int?args = null, string label = null) { _buttonState = ButtonState.MouseLeave; _navigationType = navigationType; _passingParatemer = args; _buttonGraphic = new AnimatedGraphic(); if (label != null) { _label = new Label(label); } else { _label = null; } }
/// <summary> /// Konstruktor kopiujący /// </summary> /// <param name="enemy">Obiekt wzorcowy</param> public Enemy(Enemy enemy) { _enemyGraphic = enemy._enemyGraphic.Clone(); _enemyType = enemy._enemyType; _life = enemy._life; _strenght = enemy._strenght; _speed = enemy._speed; _startSpeed = enemy._startSpeed; _direction = enemy._direction; _isFreeze = enemy._isFreeze; _isKilled = false; _evolve = enemy._evolve; _testMove = enemy._testMove; _webShoot = enemy._webShoot; _observe = enemy._observe; _attack = enemy._attack; _sawWorm = enemy._sawWorm; }