Browse Source

Merge remote-tracking branch 'upstream/master'

noath 6 năm trước cách đây
mục cha
commit
82040935b9
100 tập tin đã thay đổi với 388 bổ sung90 xóa
  1. 201 0
      Cell.cpp
  2. 70 0
      Cell.h
  3. 20 0
      assets/toUnicode.py
  4. 1 1
      assets/units/human/atraty-rider/baseclass.txt
  5. 1 1
      assets/units/human/atraty-rider/descr.txt
  6. 1 1
      assets/units/human/atraty-rider/nextgrades.txt
  7. 1 1
      assets/units/human/atraty-rider/prevgrades.txt
  8. 1 1
      assets/units/human/atraty-rider/skills.txt
  9. 1 1
      assets/units/human/atraty-rider/traits.txt
  10. 1 1
      assets/units/human/descr.txt
  11. 1 1
      assets/units/human/holy-spirit/baseclass.txt
  12. 1 1
      assets/units/human/holy-spirit/descr.txt
  13. 1 0
      assets/units/human/holy-spirit/nextgrades.txt
  14. 1 1
      assets/units/human/holy-spirit/prevgrades.txt
  15. 1 1
      assets/units/human/holy-spirit/skills.txt
  16. 1 1
      assets/units/human/holy-spirit/traits.txt
  17. 1 1
      assets/units/human/human-adept-of-subtetly/baseclass.txt
  18. 1 1
      assets/units/human/human-adept-of-subtetly/descr.txt
  19. 1 1
      assets/units/human/human-adept-of-subtetly/nextgrades.txt
  20. 1 1
      assets/units/human/human-adept-of-subtetly/prevgrades.txt
  21. 1 1
      assets/units/human/human-adept-of-subtetly/skills.txt
  22. 1 1
      assets/units/human/human-adept-of-subtetly/traits.txt
  23. 1 1
      assets/units/human/human-aerotheurger/baseclass.txt
  24. 1 1
      assets/units/human/human-aerotheurger/descr.txt
  25. 1 1
      assets/units/human/human-aerotheurger/nextgrades.txt
  26. 1 1
      assets/units/human/human-aerotheurger/prevgrades.txt
  27. 1 1
      assets/units/human/human-aerotheurger/skills.txt
  28. 1 1
      assets/units/human/human-aerotheurger/traits.txt
  29. 1 1
      assets/units/human/human-alchemist/baseclass.txt
  30. 1 1
      assets/units/human/human-alchemist/descr.txt
  31. 1 0
      assets/units/human/human-alchemist/nextgrades.txt
  32. 1 1
      assets/units/human/human-alchemist/prevgrades.txt
  33. 1 1
      assets/units/human/human-alchemist/skills.txt
  34. 1 1
      assets/units/human/human-alchemist/traits.txt
  35. 1 1
      assets/units/human/human-archer/baseclass.txt
  36. 1 1
      assets/units/human/human-archer/descr.txt
  37. 1 1
      assets/units/human/human-archer/nextgrades.txt
  38. 1 0
      assets/units/human/human-archer/prevgrades.txt
  39. 1 1
      assets/units/human/human-archer/skills.txt
  40. 1 1
      assets/units/human/human-archer/traits.txt
  41. 1 1
      assets/units/human/human-army-bowman/baseclass.txt
  42. 1 1
      assets/units/human/human-army-bowman/descr.txt
  43. 1 1
      assets/units/human/human-army-bowman/nextgrades.txt
  44. 1 1
      assets/units/human/human-army-bowman/prevgrades.txt
  45. 1 1
      assets/units/human/human-army-bowman/skills.txt
  46. 1 1
      assets/units/human/human-army-bowman/traits.txt
  47. 1 1
      assets/units/human/human-arsonist/baseclass.txt
  48. 1 1
      assets/units/human/human-arsonist/descr.txt
  49. 1 0
      assets/units/human/human-arsonist/nextgrades.txt
  50. 1 1
      assets/units/human/human-arsonist/prevgrades.txt
  51. 1 1
      assets/units/human/human-arsonist/skills.txt
  52. 1 1
      assets/units/human/human-arsonist/traits.txt
  53. 1 1
      assets/units/human/human-assassin/baseclass.txt
  54. 1 1
      assets/units/human/human-assassin/descr.txt
  55. 1 1
      assets/units/human/human-assassin/nextgrades.txt
  56. 1 1
      assets/units/human/human-assassin/prevgrades.txt
  57. 1 1
      assets/units/human/human-assassin/skills.txt
  58. 1 1
      assets/units/human/human-assassin/traits.txt
  59. 1 1
      assets/units/human/human-avenger/baseclass.txt
  60. 1 1
      assets/units/human/human-avenger/descr.txt
  61. 1 0
      assets/units/human/human-avenger/nextgrades.txt
  62. 1 1
      assets/units/human/human-avenger/prevgrades.txt
  63. 1 1
      assets/units/human/human-avenger/skills.txt
  64. 1 1
      assets/units/human/human-avenger/traits.txt
  65. 1 1
      assets/units/human/human-battle-mage/baseclass.txt
  66. 1 1
      assets/units/human/human-battle-mage/descr.txt
  67. 1 1
      assets/units/human/human-battle-mage/nextgrades.txt
  68. 1 1
      assets/units/human/human-battle-mage/prevgrades.txt
  69. 1 1
      assets/units/human/human-battle-mage/skills.txt
  70. 1 1
      assets/units/human/human-battle-mage/traits.txt
  71. 1 1
      assets/units/human/human-berserker/baseclass.txt
  72. 1 1
      assets/units/human/human-berserker/descr.txt
  73. 1 0
      assets/units/human/human-berserker/nextgrades.txt
  74. 1 1
      assets/units/human/human-berserker/prevgrades.txt
  75. 1 1
      assets/units/human/human-berserker/skills.txt
  76. 1 1
      assets/units/human/human-berserker/traits.txt
  77. 1 1
      assets/units/human/human-big-game-hunter/baseclass.txt
  78. 1 1
      assets/units/human/human-big-game-hunter/descr.txt
  79. 1 1
      assets/units/human/human-big-game-hunter/nextgrades.txt
  80. 1 1
      assets/units/human/human-big-game-hunter/prevgrades.txt
  81. 1 1
      assets/units/human/human-big-game-hunter/skills.txt
  82. 1 1
      assets/units/human/human-big-game-hunter/traits.txt
  83. 1 1
      assets/units/human/human-brigand/baseclass.txt
  84. 1 1
      assets/units/human/human-brigand/descr.txt
  85. 1 1
      assets/units/human/human-brigand/nextgrades.txt
  86. 1 1
      assets/units/human/human-brigand/prevgrades.txt
  87. 1 1
      assets/units/human/human-brigand/skills.txt
  88. 1 1
      assets/units/human/human-brigand/traits.txt
  89. 1 1
      assets/units/human/human-cataphract/baseclass.txt
  90. 1 1
      assets/units/human/human-cataphract/descr.txt
  91. 1 0
      assets/units/human/human-cataphract/nextgrades.txt
  92. 1 1
      assets/units/human/human-cataphract/prevgrades.txt
  93. 1 1
      assets/units/human/human-cataphract/skills.txt
  94. 1 1
      assets/units/human/human-cataphract/traits.txt
  95. 1 1
      assets/units/human/human-cavalryman/baseclass.txt
  96. 1 1
      assets/units/human/human-cavalryman/descr.txt
  97. 1 1
      assets/units/human/human-cavalryman/nextgrades.txt
  98. 1 1
      assets/units/human/human-cavalryman/prevgrades.txt
  99. 1 1
      assets/units/human/human-cavalryman/skills.txt
  100. 1 1
      assets/units/human/human-cavalryman/traits.txt

+ 201 - 0
Cell.cpp

@@ -0,0 +1,201 @@
+#include "Cell.h"
+#include "unit.h"
+#include <queue>
+#include <vector>
+
+Cell::Cell(Unit * character) {
+	leftUp_ = left_ = leftDown_ = nullptr;
+	rightUp_ = right_ = rightDown_ = nullptr;
+	character_ = &character;
+	clearCell_();
+	AddedToQuery_ = true;
+}
+
+Cell * Cell::getleftUp() {
+	return leftUp_;
+}
+void Cell::setleftUp(Cell * t) {
+	leftUp_ = t;
+}
+
+Cell * Cell::getleft() {
+	return left_;
+}
+void Cell::setleft(Cell * t) {
+	left_ = t;
+}
+
+Cell * Cell::getleftDown() {
+	return leftDown_;
+}
+void Cell::setleftDown(Cell * t) {
+	leftDown_ = t;
+}
+
+Cell * Cell::getrightUp() {
+	return rightUp_;
+}
+void Cell::setrightUp(Cell * t) {
+	rightUp_ = t;
+}
+
+Cell * Cell::getright() {
+	return right_;
+}
+void Cell::setright(Cell * t) {
+	right_ = t;
+}
+
+Cell * Cell::getrightDown() {
+	return rightDown_;
+}
+void Cell::setrightDown(Cell * t) {
+	rightDown_ = t;
+}
+
+Unit * Cell::getCharacter() {
+	return character_;
+}
+void Cell::setCharacter(Unit * t) {
+	character_ = t;
+}
+
+bool Cell::getisMoveable() {
+	return isMoveable_;
+}
+void Cell::setisMoveable(bool t) {
+	isMoveable_ = t;
+}
+
+bool Cell::getisAttackable() {
+	return isAttackable_;
+}
+void Cell::setisAttackable(bool t) {
+	isAttackable_ = t;
+}
+
+int Cell::getDistance() {
+	return distance_;
+}
+void Cell::setDistance(int t) {
+	distance_ = t;
+}
+
+bool Cell::isEmpty() {
+	return character_ == NULL;
+}
+
+void Cell::clearCell_() {
+	setisMoveable(false);
+	setisAttackable(false);
+	setDistance(-1);
+}
+
+void Cell::clearTable_() {
+	std::queue<Cell*> q;
+	q.push(this);
+	clearCell_();
+	this->AddedToQuery_ = false;
+	auto f = [&q](Cell * t) {
+		if (t && t->AddedToQuery_ == true) {
+			q.push(t);
+			t->AddedToQuery_ = false;
+		}
+	};
+	while (!q.empty()) {
+		Cell * Now = q.front();
+		q.pop();
+		Now->clearCell_();
+		f(Now->getleftUp());
+		f(Now->getleft());
+		f(Now->getleftDown());
+		f(Now->getrightUp());
+		f(Now->getright());
+		f(Now->getrightDown());
+	}
+}
+
+void Cell::handleAllMoveableCellsAndUnmoveableCells_(std::queue<Cell*> & Q) {
+	std::queue<Cell*> q;
+	q.push(this);
+	setDistance(0);
+	auto f = [&q, &Q](Cell * t, Cell * parent) {
+		if (t && !t->AddedToQuery_) {
+			t->AddedToQuery_ = true;
+			if (t->getCharacter() != NULL) {
+				t->setisMoveable(false);
+				Q.push(t);
+				return;
+			}
+			q.push(t);
+			t->setDistance(parent->getDistance() + 1);
+		}
+	};
+	while (!q.empty()) {
+		Cell * Now = q.front();
+		Now->setisMoveable(true);
+		if (getCharacter() != NULL && getCharacter()->СanAttack(Now->getDistance())) {
+			Now->setisAttackable(true);
+		}
+		else {
+			Now->setisAttackable(false);
+		}
+		q.pop();
+		f(Now->getleftUp(), Now);
+		f(Now->getleft(), Now);
+		f(Now->getleftDown(), Now);
+		f(Now->getrightUp(), Now);
+		f(Now->getright(), Now);
+		f(Now->getrightDown(), Now);
+	}
+}
+
+void Cell::handleAllUnmoveableCells_(std::queue<Cell*> & Q) {
+	auto f = [&Q](Cell * t, Cell * parent) {
+		if (t && !t->AddedToQuery_) {
+			t->AddedToQuery_ = true;
+			Q.push(t);
+		}
+	};
+	while (!Q.empty()) {
+		Cell * Now = Q.front();
+		Now->setisMoveable(false);
+		Now->setisAttackable(false);
+		Q.pop();
+		f(Now->getleftUp(), Now);
+		f(Now->getleft(), Now);
+		f(Now->getleftDown(), Now);
+		f(Now->getrightUp(), Now);
+		f(Now->getright(), Now);
+		f(Now->getrightDown(), Now);
+	}
+}
+
+void Cell::RecalculateTableWithCenterThisPoint() {
+	clearTable_();
+	std::queue<Cell*> qWithoutMoveable;
+	handleAllMoveableCellsAndUnmoveableCells_(qWithoutMoveable);
+	handleAllUnmoveableCells_(qWithoutMoveable);
+}
+
+std::vector <Cell*> Cell::actualPath(Cell* to) {//std::vector<Cell*> âêëþ÷àåòñÿ â ñåáÿ è this, è end
+	if (!to || !to->getisMoveable())return std::vector<Cell*>();
+	auto ret = std::vector<Cell*>(1, to);
+	while (to != this) {
+		Cell * parent = NULL;
+		auto f = [&parent](Cell * TestParent, Cell * Now) {
+			if (TestParent && TestParent->getDistance() + 1 == Now->getDistance() && TestParent->getisMoveable()) {
+				parent = TestParent;
+			}
+		};
+		f(to->getleftUp(), to);
+		f(to->getleft(), to);
+		f(to->getleftDown(), to);
+		f(to->getrightUp(), to);
+		f(to->getright(), to);
+		f(to->getrightDown(), to);
+		to = parent;
+		ret.push_back(to);
+	}
+	return ret;
+}

+ 70 - 0
Cell.h

@@ -0,0 +1,70 @@
+#pragma once
+#include <queue>
+#include <vector>
+
+class Unit;
+
+class Cell {
+
+private:
+	Cell * leftUp_;
+	Cell *left_;
+	Cell * leftDown_;
+
+	Cell *rightUp_;
+	Cell *right_;
+	Cell *rightDown_;
+
+	Unit *character_;
+
+	bool isMoveable_;
+	bool  isAttackable_;
+
+	int distance_;
+	bool AddedToQuery_;
+
+	void clearTable_();
+	void clearCell_();
+
+	void handleAllMoveableCellsAndUnmoveableCells_(std::queue<Cell*> & Q);
+	void handleAllUnmoveableCells_(std::queue<Cell*> & Q);
+
+public:
+
+	explicit Cell(Unit * character);
+
+	Cell * getleftUp();
+	void setleftUp(Cell *);
+
+	Cell * getleft();
+	void setleft(Cell *);
+	
+	Cell * getleftDown();
+	void setleftDown(Cell *);
+	
+	Cell * getrightUp();
+	void setrightUp(Cell *);
+	
+	Cell * getright();
+	void setright(Cell *);
+	
+	Cell * getrightDown();
+	void setrightDown(Cell *);
+	
+	Unit * getCharacter();
+	void setCharacter(Unit *);
+	
+	bool getisMoveable();
+	void setisMoveable(bool);
+	
+	bool getisAttackable();
+	void setisAttackable(bool);
+	
+	int getDistance();
+	void setDistance(int);
+	
+	bool isEmpty();
+
+	void RecalculateTableWithCenterThisPoint();
+	std::vector <Cell*> actualPath(Cell*);
+};

+ 20 - 0
assets/toUnicode.py

@@ -0,0 +1,20 @@
+import glob
+import os
+import sys
+import codecs 
+
+rootdir = "./"
+
+source_encoding = "ISO-8859"
+target_encoding = "utf-8"
+
+for root, subdirs, files in os.walk(rootdir):
+	for filename in files:
+		if filename[-4:] == ".txt":
+			print(os.path.join(root, filename))
+			source = open(os.path.join(root, filename), 'r').read()
+			print(u''.join(source))
+
+			final = codecs.open(os.path.join(root, filename), 'w', target_encoding)
+			print(u''.join(source), file = final)
+			final.close()

+ 1 - 1
assets/units/human/atraty-rider/baseclass.txt

@@ -1 +1 @@
-Rider
+Rider

+ 1 - 1
assets/units/human/atraty-rider/descr.txt

@@ -1 +1 @@
-Несколько вольных племён объединились под единым руководством верховного вождя. Этот стан получил название Атратия. Всадники, находящиеся под руководством верховного вождя используют серповидное оружие, чтобы на большой скорости ранить множество противников, ослабляя их обильными кровотечениями.
+Несколько вольных племён объединились под единым руководством верховного вождя. Этот стан получил название Атратия. Всадники, находящиеся под руководством верховного вождя используют серповидное оружие, чтобы на большой скорости ранить множество противников, ослабляя их обильными кровотечениями.

+ 1 - 1
assets/units/human/atraty-rider/nextgrades.txt

@@ -1 +1 @@
-human-warlord
+human-warlord

+ 1 - 1
assets/units/human/atraty-rider/prevgrades.txt

@@ -1 +1 @@
-human-wild-rider
+human-wild-rider

+ 1 - 1
assets/units/human/atraty-rider/skills.txt

@@ -1 +1 @@
-This unit can nothing :(
+This unit can nothing :(

+ 1 - 1
assets/units/human/atraty-rider/traits.txt

@@ -1 +1 @@
-This class is empty like ur soul!
+This class is empty like ur soul!

+ 1 - 1
assets/units/human/descr.txt

@@ -1 +1 @@
-Люди – одна из самых молодых рас в этом мире. Но на их долю уже выпало немало испытаний, и они выдержали их с честью. В течение многих поколений племена людей жили разрозненно, и только угроза со стороны набирающих силу империй других рас заставила их объединиться.
+Люди – одна из самых молодых рас в этом мире. Но на их долю уже выпало немало испытаний, и они выдержали их с честью. В течение многих поколений племена людей жили разрозненно, и только угроза со стороны набирающих силу империй других рас заставила их объединиться.

+ 1 - 1
assets/units/human/holy-spirit/baseclass.txt

@@ -1 +1 @@
-Mage
+Mage

+ 1 - 1
assets/units/human/holy-spirit/descr.txt

@@ -1 +1 @@
-Жрецы, чья душа оказалась сильна и чиста, удостоились чести слиться с магией Света воедино. Святые души обладают способностью полностью сосредотачивать магию Света на определенном союзнике, исцеляя его раны или, что удивительно, возвращать его к жизни.
+Жрецы, чья душа оказалась сильна и чиста, удостоились чести слиться с магией Света воедино. Святые души обладают способностью полностью сосредотачивать магию Света на определенном союзнике, исцеляя его раны или, что удивительно, возвращать его к жизни.

+ 1 - 0
assets/units/human/holy-spirit/nextgrades.txt

@@ -0,0 +1 @@
+

+ 1 - 1
assets/units/human/holy-spirit/prevgrades.txt

@@ -1 +1 @@
-human-priest
+human-priest

+ 1 - 1
assets/units/human/holy-spirit/skills.txt

@@ -1 +1 @@
-This unit can nothing :(
+This unit can nothing :(

+ 1 - 1
assets/units/human/holy-spirit/traits.txt

@@ -1 +1 @@
-This class is empty like ur soul!
+This class is empty like ur soul!

+ 1 - 1
assets/units/human/human-adept-of-subtetly/baseclass.txt

@@ -1 +1 @@
-Rogue
+Rogue

+ 1 - 1
assets/units/human/human-adept-of-subtetly/descr.txt

@@ -1 +1 @@
-Дом Теней - древняя межрасовая организация, занимающаяся установлением справедливости в мире своими "особыми" радикальными методами. Однако же после столетней войны Дом Теней распался на расовые организации, целью каждой из которых стало установление всеобщей справедливости внутри своей фракции.
+Дом Теней - древняя межрасовая организация, занимающаяся установлением справедливости в мире своими "особыми" радикальными методами. Однако же после столетней войны Дом Теней распался на расовые организации, целью каждой из которых стало установление всеобщей справедливости внутри своей фракции.

+ 1 - 1
assets/units/human/human-adept-of-subtetly/nextgrades.txt

@@ -1,2 +1,2 @@
 human-master-of-subtetly
-human-dancer-with-shadows
+human-dancer-with-shadows

+ 1 - 1
assets/units/human/human-adept-of-subtetly/prevgrades.txt

@@ -1 +1 @@
-human-slayer
+human-slayer

+ 1 - 1
assets/units/human/human-adept-of-subtetly/skills.txt

@@ -1 +1 @@
-This unit can nothing :(
+This unit can nothing :(

+ 1 - 1
assets/units/human/human-adept-of-subtetly/traits.txt

@@ -1 +1 @@
-This class is empty like ur soul!
+This class is empty like ur soul!

+ 1 - 1
assets/units/human/human-aerotheurger/baseclass.txt

@@ -1 +1 @@
-Mage
+Mage

+ 1 - 1
assets/units/human/human-aerotheurger/descr.txt

@@ -1 +1 @@
-Аэротургия даёт магу возможность сгущать и рассеивать воздух, а так же управлять его потоками.
+Аэротургия даёт магу возможность сгущать и рассеивать воздух, а так же управлять его потоками.

+ 1 - 1
assets/units/human/human-aerotheurger/nextgrades.txt

@@ -1,2 +1,2 @@
 human-lightning-mage
-human-frost-mage
+human-frost-mage

+ 1 - 1
assets/units/human/human-aerotheurger/prevgrades.txt

@@ -1 +1 @@
-human-battle-mage
+human-battle-mage

+ 1 - 1
assets/units/human/human-aerotheurger/skills.txt

@@ -1 +1 @@
-This unit can nothing :(
+This unit can nothing :(

+ 1 - 1
assets/units/human/human-aerotheurger/traits.txt

@@ -1 +1 @@
-This class is empty like ur soul!
+This class is empty like ur soul!

+ 1 - 1
assets/units/human/human-alchemist/baseclass.txt

@@ -1 +1 @@
-Mage
+Mage

+ 1 - 1
assets/units/human/human-alchemist/descr.txt

@@ -1 +1 @@
-Добавляя в свои отвары частицы магии, алхимики начали получать гораздо более эффективные смеси - зелья, способные как помочь союзникам, так и навредить врагам.
+Добавляя в свои отвары частицы магии, алхимики начали получать гораздо более эффективные смеси - зелья, способные как помочь союзникам, так и навредить врагам.

+ 1 - 0
assets/units/human/human-alchemist/nextgrades.txt

@@ -0,0 +1 @@
+

+ 1 - 1
assets/units/human/human-alchemist/prevgrades.txt

@@ -1 +1 @@
-human-witch-doctor
+human-witch-doctor

+ 1 - 1
assets/units/human/human-alchemist/skills.txt

@@ -1 +1 @@
-This unit can nothing :(
+This unit can nothing :(

+ 1 - 1
assets/units/human/human-alchemist/traits.txt

@@ -1 +1 @@
-This class is empty like ur soul!
+This class is empty like ur soul!

+ 1 - 1
assets/units/human/human-archer/baseclass.txt

@@ -1 +1 @@
-Archer
+Archer

+ 1 - 1
assets/units/human/human-archer/descr.txt

@@ -1 +1 @@
-Для того, чтобы стать стрелком, нужна невероятная концентрация. Именно поэтому хорошие стрелки ценятся в войске не меньше магов или любых других бойцов.
+Для того, чтобы стать стрелком, нужна невероятная концентрация. �менно поэтому хорошие стрелки ценятся в войске не меньше магов или любых других бойцов.

+ 1 - 1
assets/units/human/human-archer/nextgrades.txt

@@ -1,2 +1,2 @@
 human-hunter
-human-army-bowman
+human-army-bowman

+ 1 - 0
assets/units/human/human-archer/prevgrades.txt

@@ -0,0 +1 @@
+

+ 1 - 1
assets/units/human/human-archer/skills.txt

@@ -1 +1 @@
-This unit can nothing :(
+This unit can nothing :(

+ 1 - 1
assets/units/human/human-archer/traits.txt

@@ -1 +1 @@
-This class is empty like ur soul!
+This class is empty like ur soul!

+ 1 - 1
assets/units/human/human-army-bowman/baseclass.txt

@@ -1 +1 @@
-Archer
+Archer

+ 1 - 1
assets/units/human/human-army-bowman/descr.txt

@@ -1 +1 @@
-Армейские застрельщики отлично подходят для атаки из ровного строя, исключающее необходимость много передвигаться.
+Армейские застрельщики отлично подходят для атаки из ровного строя, исключающее необходимость много передвигаться.

+ 1 - 1
assets/units/human/human-army-bowman/nextgrades.txt

@@ -1,3 +1,3 @@
 human-royal-archer
 human-marksman
-human-skirmisher
+human-skirmisher

+ 1 - 1
assets/units/human/human-army-bowman/prevgrades.txt

@@ -1 +1 @@
-human-archer
+human-archer

+ 1 - 1
assets/units/human/human-army-bowman/skills.txt

@@ -1 +1 @@
-This unit can nothing :(
+This unit can nothing :(

+ 1 - 1
assets/units/human/human-army-bowman/traits.txt

@@ -1 +1 @@
-This class is empty like ur soul!
+This class is empty like ur soul!

+ 1 - 1
assets/units/human/human-arsonist/baseclass.txt

@@ -1 +1 @@
-Mage
+Mage

+ 1 - 1
assets/units/human/human-arsonist/descr.txt

@@ -1 +1 @@
-Отточенный до совершенства контроль магии огня позволяет поджигателям использовать её так изощренно, как только пожелает их фантазия. Это даёт им возможность умело справляться с особо опасными противниками.
+Отточенный до совершенства контроль магии огня позволяет поджигателям использовать её так изощренно, как только пожелает их фантазия. Это даёт им возможность умело справляться с особо опасными противниками.

+ 1 - 0
assets/units/human/human-arsonist/nextgrades.txt

@@ -0,0 +1 @@
+

+ 1 - 1
assets/units/human/human-arsonist/prevgrades.txt

@@ -1 +1 @@
-human-pyromante
+human-pyromante

+ 1 - 1
assets/units/human/human-arsonist/skills.txt

@@ -1 +1 @@
-This unit can nothing :(
+This unit can nothing :(

+ 1 - 1
assets/units/human/human-arsonist/traits.txt

@@ -1 +1 @@
-This class is empty like ur soul!
+This class is empty like ur soul!

+ 1 - 1
assets/units/human/human-assassin/baseclass.txt

@@ -1 +1 @@
-Rogue
+Rogue

+ 1 - 1
assets/units/human/human-assassin/descr.txt

@@ -1 +1 @@
-Асасины - убийцы, предлагающие свои услуги людям с толстым кошелём. Честно будет заметить, что даже верховная власть королевства нередко обращается к асасинам, что безусловно свидетельствует об их профессионализме.
+Асасины - убийцы, предлагающие свои услуги людям с толстым кошелём. Честно будет заметить, что даже верховная власть королевства нередко обращается к асасинам, что безусловно свидетельствует об их профессионализме.

+ 1 - 1
assets/units/human/human-assassin/nextgrades.txt

@@ -1,2 +1,2 @@
 human-poisoner
-human-liquidator
+human-liquidator

+ 1 - 1
assets/units/human/human-assassin/prevgrades.txt

@@ -1 +1 @@
-human-slayer
+human-slayer

+ 1 - 1
assets/units/human/human-assassin/skills.txt

@@ -1 +1 @@
-This unit can nothing :(
+This unit can nothing :(

+ 1 - 1
assets/units/human/human-assassin/traits.txt

@@ -1 +1 @@
-This class is empty like ur soul!
+This class is empty like ur soul!

+ 1 - 1
assets/units/human/human-avenger/baseclass.txt

@@ -1 +1 @@
-Warrior
+Warrior

+ 1 - 1
assets/units/human/human-avenger/descr.txt

@@ -1 +1 @@
-Мстители в совершенстве овладели искусством контратаки, в следствие чего получили возможность быть опасной боевой единицей на поле брани независимо от их возможности атаковать.
+Мстители в совершенстве овладели искусством контратаки, в следствие чего получили возможность быть опасной боевой единицей на поле брани независимо от их возможности атаковать.

+ 1 - 0
assets/units/human/human-avenger/nextgrades.txt

@@ -0,0 +1 @@
+

+ 1 - 1
assets/units/human/human-avenger/prevgrades.txt

@@ -1 +1 @@
-human-defender
+human-defender

+ 1 - 1
assets/units/human/human-avenger/skills.txt

@@ -1 +1 @@
-This unit can nothing :(
+This unit can nothing :(

+ 1 - 1
assets/units/human/human-avenger/traits.txt

@@ -1 +1 @@
-This class is empty like ur soul!
+This class is empty like ur soul!

+ 1 - 1
assets/units/human/human-battle-mage/baseclass.txt

@@ -1 +1 @@
-Mage
+Mage

+ 1 - 1
assets/units/human/human-battle-mage/descr.txt

@@ -1 +1 @@
-Нет ничего внушительнее и разрушительнее, чем способности боевых магов, обрушенные на их врагов.
+Нет ничего внушительнее и разрушительнее, чем способности боевых магов, обрушенные на их врагов.

+ 1 - 1
assets/units/human/human-battle-mage/nextgrades.txt

@@ -1,2 +1,2 @@
 human-pyromante
-human-aerotheurger
+human-aerotheurger

+ 1 - 1
assets/units/human/human-battle-mage/prevgrades.txt

@@ -1 +1 @@
-human-mage
+human-mage

+ 1 - 1
assets/units/human/human-battle-mage/skills.txt

@@ -1 +1 @@
-This unit can nothing :(
+This unit can nothing :(

+ 1 - 1
assets/units/human/human-battle-mage/traits.txt

@@ -1 +1 @@
-This class is empty like ur soul!
+This class is empty like ur soul!

+ 1 - 1
assets/units/human/human-berserker/baseclass.txt

@@ -1 +1 @@
-Warrior
+Warrior

+ 1 - 1
assets/units/human/human-berserker/descr.txt

@@ -1 +1 @@
-Берсерки по-настоящему наслаждаются сражениями. Каждая рана, полученная ими в бою, укрепляет их волю, делая берсерков сильнее.
+Берсерки по-настоящему наслаждаются сражениями. Каждая рана, полученная ими в бою, укрепляет их волю, делая берсерков сильнее.

+ 1 - 0
assets/units/human/human-berserker/nextgrades.txt

@@ -0,0 +1 @@
+

+ 1 - 1
assets/units/human/human-berserker/prevgrades.txt

@@ -1 +1 @@
-human-duelist
+human-duelist

+ 1 - 1
assets/units/human/human-berserker/skills.txt

@@ -1 +1 @@
-This unit can nothing :(
+This unit can nothing :(

+ 1 - 1
assets/units/human/human-berserker/traits.txt

@@ -1 +1 @@
-This class is empty like ur soul!
+This class is empty like ur soul!

+ 1 - 1
assets/units/human/human-big-game-hunter/baseclass.txt

@@ -1 +1 @@
-Archer
+Archer

+ 1 - 1
assets/units/human/human-big-game-hunter/descr.txt

@@ -1 +1 @@
-Только самые умелые охотники могут без промедления начать преследовать крупную добычу. На поле боя прекрасно видят уязвимости противника и используют их.
+Только самые умелые охотники могут без промедления начать преследовать крупную добычу. На поле боя прекрасно видят уязвимости противника и используют их.

+ 1 - 1
assets/units/human/human-big-game-hunter/nextgrades.txt

@@ -1,2 +1,2 @@
 human-trapper
-human-farstrider
+human-farstrider

+ 1 - 1
assets/units/human/human-big-game-hunter/prevgrades.txt

@@ -1 +1 @@
-human-hunter
+human-hunter

+ 1 - 1
assets/units/human/human-big-game-hunter/skills.txt

@@ -1 +1 @@
-This unit can nothing :(
+This unit can nothing :(

+ 1 - 1
assets/units/human/human-big-game-hunter/traits.txt

@@ -1 +1 @@
-This class is empty like ur soul!
+This class is empty like ur soul!

+ 1 - 1
assets/units/human/human-brigand/baseclass.txt

@@ -1 +1 @@
-Rogue
+Rogue

+ 1 - 1
assets/units/human/human-brigand/descr.txt

@@ -1 +1 @@
-Как считают разбойники, для победы хороши любые способы: пыль в глаза, пинок в колено или классическое «Смотри, птичка!»
+Как считают разбойники, для победы хороши любые способы: пыль в глаза, пинок в колено или классическое «Смотри, птичка!»

+ 1 - 1
assets/units/human/human-brigand/nextgrades.txt

@@ -1,2 +1,2 @@
 human-thug
-human-marauder
+human-marauder

+ 1 - 1
assets/units/human/human-brigand/prevgrades.txt

@@ -1 +1 @@
-human-outlaw
+human-outlaw

+ 1 - 1
assets/units/human/human-brigand/skills.txt

@@ -1 +1 @@
-This unit can nothing :(
+This unit can nothing :(

+ 1 - 1
assets/units/human/human-brigand/traits.txt

@@ -1 +1 @@
-This class is empty like ur soul!
+This class is empty like ur soul!

+ 1 - 1
assets/units/human/human-cataphract/baseclass.txt

@@ -1 +1 @@
-Rider
+Rider

+ 1 - 1
assets/units/human/human-cataphract/descr.txt

@@ -1 +1 @@
-Катафракты - всадники в тяжелой броне, продавливающие ряды противников назад.
+Катафракты - всадники в тяжелой броне, продавливающие ряды противников назад.

+ 1 - 0
assets/units/human/human-cataphract/nextgrades.txt

@@ -0,0 +1 @@
+

+ 1 - 1
assets/units/human/human-cataphract/prevgrades.txt

@@ -1 +1 @@
-human-cavalryman
+human-cavalryman

+ 1 - 1
assets/units/human/human-cataphract/skills.txt

@@ -1 +1 @@
-This unit can nothing :(
+This unit can nothing :(

+ 1 - 1
assets/units/human/human-cataphract/traits.txt

@@ -1 +1 @@
-This class is empty like ur soul!
+This class is empty like ur soul!

+ 1 - 1
assets/units/human/human-cavalryman/baseclass.txt

@@ -1 +1 @@
-Rider
+Rider

+ 1 - 1
assets/units/human/human-cavalryman/descr.txt

@@ -1 +1 @@
-Кавалеристы - защищенные всадники авангарда, сеяющие хаос в рядах армии противника.
+Кавалеристы - защищенные всадники авангарда, сеяющие хаос в рядах армии противника.

+ 1 - 1
assets/units/human/human-cavalryman/nextgrades.txt

@@ -1,2 +1,2 @@
 human-clinicaria
-human-cataphract
+human-cataphract

+ 1 - 1
assets/units/human/human-cavalryman/prevgrades.txt

@@ -1 +1 @@
-human-rider
+human-rider

+ 1 - 1
assets/units/human/human-cavalryman/skills.txt

@@ -1 +1 @@
-This unit can nothing :(
+This unit can nothing :(

+ 1 - 1
assets/units/human/human-cavalryman/traits.txt

@@ -1 +1 @@
-This class is empty like ur soul!
+This class is empty like ur soul!

Một số tệp đã không được hiển thị bởi vì quá nhiều tập tin thay đổi trong này khác