Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- using System;
- using System.Collections.Generic;
- using System.Linq;
- using System.Text;
- using System.Threading.Tasks;
- namespace MatiKolos3
- {
- public enum charClass { warrior, mage, archer };
- public struct classDamage
- {
- public const double d1 = 0.5;
- public const double d2 = 1;
- public const double d3 = 1.5;
- }
- class Character
- {
- public double posx;
- public double posy;
- public int lvl;
- public string nick;
- public charClass charclass;
- public Character()
- {
- }
- public void Generate(double _posx, double _posy, int _lvl, string _nick, charClass _charclass)
- {
- this.posx = _posx;
- this.posy = _posy;
- this.lvl = _lvl;
- this.nick = _nick;
- this.charclass = _charclass;
- }
- public double CalculateDamage(int a,int b,charClass tmp_class,charClass tmp_class2)
- {
- double classdmg = 0;
- double calculate;
- if(tmp_class == tmp_class2)
- {
- classdmg = classDamage.d2;
- }
- else if(tmp_class == charClass.warrior && tmp_class2 == charClass.archer)
- {
- classdmg = classDamage.d3 - classDamage.d1;
- }
- else if(tmp_class == charClass.mage && tmp_class2 == charClass.warrior)
- {
- classdmg = classDamage.d3 - classDamage.d1;
- }
- else if (tmp_class == charClass.archer && tmp_class2 == charClass.mage)
- {
- classdmg = classDamage.d3 - classDamage.d1;
- }
- else if (tmp_class == charClass.archer && tmp_class2 == charClass.warrior)
- {
- classdmg = classDamage.d1 - classDamage.d3;
- }
- else if (tmp_class == charClass.warrior && tmp_class2 == charClass.mage)
- {
- classdmg = classDamage.d1 - classDamage.d3;
- }
- else if (tmp_class == charClass.mage && tmp_class2 == charClass.archer)
- {
- classdmg = classDamage.d1 - classDamage.d3;
- }
- calculate = a - b;
- calculate = calculate * classdmg;
- if (calculate < 0)
- return 0;
- else
- return classdmg;
- }
- public void Action()
- {
- Console.WriteLine(this.charclass+" "+this.nick + " is walking");
- }
- }
- class Warrior : Character
- {
- public void Action()
- {
- Console.WriteLine(this.charclass+" "+this.nick + " is walking");
- }
- }
- class Archer : Character
- {
- public void Action()
- {
- Console.WriteLine(this.charclass + " " + this.nick + " is walking");
- }
- }
- class Mage : Character
- {
- public void Action()
- {
- Console.WriteLine(this.charclass + " " + this.nick + " is walking");
- }
- }
- class Program
- {
- static void Main(string[] args)
- {
- List<Character> druzyna = new List<Character>();
- Archer nowy1 = new Archer();
- Warrior nowy2 = new Warrior();
- Mage nowy3 = new Mage();
- ///zad2
- nowy1.Generate(0, 1, 8, "Legolas", charClass.archer);
- nowy2.Generate(2, 2, 10, "Aragorn", charClass.warrior);
- nowy3.Generate(3, 10, 11, "Gandalf", charClass.mage);
- druzyna.Add(nowy1);
- druzyna.Add(nowy2);
- druzyna.Add(nowy3);
- foreach(var i in druzyna)
- {
- i.Action();
- }
- ///zad4
- List<Character> SortedDruzyna = druzyna.OrderBy(o => o.nick).ToList();
- foreach (var i in SortedDruzyna)
- {
- Console.WriteLine(i.nick);
- }
- ///zad1
- var cos = nowy1.CalculateDamage(nowy2.lvl, nowy1.lvl, nowy2.charclass, nowy1.charclass);
- Console.WriteLine("dmg classy "+cos);
- Console.ReadKey();
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement