병종 테이블에 상성 값 확장
This commit is contained in:
+264
-37
@@ -23,50 +23,273 @@ class GameUnitConstBase{
|
||||
protected static $constType = null;
|
||||
|
||||
protected static $typeData = [
|
||||
GameUnitConstBase::T_FOOTMAN => '보병',
|
||||
GameUnitConstBase::T_ARCHER => '궁병',
|
||||
GameUnitConstBase::T_CAVALRY => '기병',
|
||||
GameUnitConstBase::T_WIZARD => '귀병',
|
||||
GameUnitConstBase::T_SIEGE => '차병',
|
||||
self::T_FOOTMAN => '보병',
|
||||
self::T_ARCHER => '궁병',
|
||||
self::T_CAVALRY => '기병',
|
||||
self::T_WIZARD => '귀병',
|
||||
self::T_SIEGE => '차병',
|
||||
];
|
||||
|
||||
protected static $_buildData = [
|
||||
[ 0, GameUnitConstBase::T_FOOTMAN, '보병', 100, 150, 7, 10, 0, 9, 9, 0, null, null, 0, ['표준적인 보병입니다.','보병은 방어특화입니다.']],
|
||||
[ 1, GameUnitConstBase::T_FOOTMAN, '청주병', 100, 200, 7, 10, 0, 10, 11, 1000, null, ['중원'], 0, ['저렴하고 튼튼합니다.']],
|
||||
[ 2, GameUnitConstBase::T_FOOTMAN, '수병', 150, 150, 7, 10, 0, 11, 10, 1000, null, ['오월'], 0, ['저렴하고 강력합니다.']],
|
||||
[ 3, GameUnitConstBase::T_FOOTMAN, '자객병', 100, 150, 7, 20, 0, 10, 10, 2000, ['저'], null, 0, ['은밀하고 날쌥니다.']],
|
||||
[ 4, GameUnitConstBase::T_FOOTMAN, '근위병', 150, 200, 7, 10, 0, 12, 12, 3000, ['낙양'], null, 0, ['최강의 보병입니다.']],
|
||||
[ 5, GameUnitConstBase::T_FOOTMAN, '등갑병', 100, 250, 7, 5, 0, 13, 10, 1000, null, ['남중'], 0, ['등갑을 두른 보병입니다.']],
|
||||
[
|
||||
0, self::T_FOOTMAN, '보병',
|
||||
100, 150, 7, 10, 0, 9, 9,
|
||||
0, null, null, 0,
|
||||
[self::T_ARCHER=>1.2, self::T_CAVALRY=>0.8, self::T_SIEGE=>1.2],
|
||||
[self::T_ARCHER=>0.8, self::T_CAVALRY=>1.2, self::T_SIEGE=>0.8],
|
||||
['표준적인 보병입니다.','보병은 방어특화입니다.']
|
||||
],
|
||||
[
|
||||
1, self::T_FOOTMAN, '청주병',
|
||||
100, 200, 7, 10, 0, 10, 11,
|
||||
1000, null, ['중원'], 0,
|
||||
[self::T_ARCHER=>1.2, self::T_CAVALRY=>0.8, self::T_SIEGE=>1.2],
|
||||
[self::T_ARCHER=>0.8, self::T_CAVALRY=>1.2, self::T_SIEGE=>0.8],
|
||||
['저렴하고 튼튼합니다.']
|
||||
],
|
||||
[
|
||||
2, self::T_FOOTMAN, '수병',
|
||||
150, 150, 7, 10, 0, 11, 10,
|
||||
1000, null, ['오월'], 0,
|
||||
[self::T_ARCHER=>1.2, self::T_CAVALRY=>0.8, self::T_SIEGE=>1.2],
|
||||
[self::T_ARCHER=>0.8, self::T_CAVALRY=>1.2, self::T_SIEGE=>0.8],
|
||||
['저렴하고 강력합니다.']
|
||||
],
|
||||
[
|
||||
3, self::T_FOOTMAN, '자객병',
|
||||
100, 150, 7, 20, 0, 10, 10,
|
||||
2000, ['저'], null, 0,
|
||||
[self::T_ARCHER=>1.2, self::T_CAVALRY=>0.8, self::T_SIEGE=>1.2],
|
||||
[self::T_ARCHER=>0.8, self::T_CAVALRY=>1.2, self::T_SIEGE=>0.8],
|
||||
['은밀하고 날쌥니다.']
|
||||
],
|
||||
[
|
||||
4, self::T_FOOTMAN, '근위병',
|
||||
150, 200, 7, 10, 0, 12, 12,
|
||||
3000, ['낙양'], null, 0,
|
||||
[self::T_ARCHER=>1.2, self::T_CAVALRY=>0.8, self::T_SIEGE=>1.2],
|
||||
[self::T_ARCHER=>0.8, self::T_CAVALRY=>1.2, self::T_SIEGE=>0.8],
|
||||
['최강의 보병입니다.']
|
||||
],
|
||||
[
|
||||
5, self::T_FOOTMAN, '등갑병',
|
||||
100, 250, 7, 5, 0, 13, 10,
|
||||
1000, null, ['남중'], 0,
|
||||
[self::T_ARCHER=>1.2, self::T_CAVALRY=>0.8, self::T_SIEGE=>1.2],
|
||||
[self::T_ARCHER=>0.8, self::T_CAVALRY=>1.2, self::T_SIEGE=>0.8],
|
||||
['등갑을 두른 보병입니다.']
|
||||
],
|
||||
|
||||
[10, GameUnitConstBase::T_ARCHER, '궁병', 100, 100, 7, 20, 0, 10, 10, 0, null, null, 0, ['표준적인 궁병입니다.','궁병은 회피특화입니다.']],
|
||||
[11, GameUnitConstBase::T_ARCHER, '궁기병', 100, 100, 8, 30, 0, 11, 12, 1000, null, ['동이'], 0, ['말을 타고 잘 피합니다.']],
|
||||
[12, GameUnitConstBase::T_ARCHER, '연노병', 150, 100, 8, 20, 0, 12, 11, 1000, null, ['서촉'], 0, ['화살을 연사합니다.']],
|
||||
[13, GameUnitConstBase::T_ARCHER, '강궁병', 150, 150, 7, 20, 0, 13, 13, 3000, ['양양'], null, 0, ['강건한 궁병입니다.']],
|
||||
[14, GameUnitConstBase::T_ARCHER, '석궁병', 200, 100, 7, 20, 0, 13, 13, 3000, ['건업'], null, 0, ['강력한 화살을 쏩니다.']],
|
||||
[
|
||||
10, self::T_ARCHER, '궁병',
|
||||
100, 100, 7, 20, 0, 10, 10,
|
||||
0, null, null, 0,
|
||||
[self::T_CAVALRY=>1.2, self::T_FOOTMAN=>0.8, self::T_SIEGE=>1.2],
|
||||
[self::T_CAVALRY=>0.8, self::T_FOOTMAN=>1.2, self::T_SIEGE=>0.8],
|
||||
['표준적인 궁병입니다.','궁병은 회피특화입니다.']
|
||||
],
|
||||
[
|
||||
11, self::T_ARCHER, '궁기병',
|
||||
100, 100, 8, 30, 0, 11, 12,
|
||||
1000, null, ['동이'], 0,
|
||||
[self::T_CAVALRY=>1.2, self::T_FOOTMAN=>0.8, self::T_SIEGE=>1.2],
|
||||
[self::T_CAVALRY=>0.8, self::T_FOOTMAN=>1.2, self::T_SIEGE=>0.8],
|
||||
['말을 타고 잘 피합니다.']
|
||||
],
|
||||
[
|
||||
12, self::T_ARCHER, '연노병',
|
||||
150, 100, 8, 20, 0, 12, 11,
|
||||
1000, null, ['서촉'], 0,
|
||||
[self::T_CAVALRY=>1.2, self::T_FOOTMAN=>0.8, self::T_SIEGE=>1.2],
|
||||
[self::T_CAVALRY=>0.8, self::T_FOOTMAN=>1.2, self::T_SIEGE=>0.8],
|
||||
['화살을 연사합니다.']
|
||||
],
|
||||
[
|
||||
13, self::T_ARCHER, '강궁병',
|
||||
150, 150, 7, 20, 0, 13, 13,
|
||||
3000, ['양양'], null, 0,
|
||||
[self::T_CAVALRY=>1.2, self::T_FOOTMAN=>0.8, self::T_SIEGE=>1.2],
|
||||
[self::T_CAVALRY=>0.8, self::T_FOOTMAN=>1.2, self::T_SIEGE=>0.8],
|
||||
['강건한 궁병입니다.']
|
||||
],
|
||||
[
|
||||
14, self::T_ARCHER, '석궁병',
|
||||
200, 100, 7, 20, 0, 13, 13,
|
||||
3000, ['건업'], null, 0,
|
||||
[self::T_CAVALRY=>1.2, self::T_FOOTMAN=>0.8, self::T_SIEGE=>1.2],
|
||||
[self::T_CAVALRY=>0.8, self::T_FOOTMAN=>1.2, self::T_SIEGE=>0.8],
|
||||
['강력한 화살을 쏩니다.']
|
||||
],
|
||||
|
||||
[20, GameUnitConstBase::T_CAVALRY, '기병', 150, 100, 7, 5, 0, 11, 11, 0, null, null, 0, ['표준적인 기병입니다.','기병은 공격특화입니다.']],
|
||||
[21, GameUnitConstBase::T_CAVALRY, '백마병', 200, 100, 7, 5, 0, 12, 13, 1000, null, ['하북'], 0, ['백마의 위용을 보여줍니다.']],
|
||||
[22, GameUnitConstBase::T_CAVALRY, '중장기병', 150, 150, 7, 5, 0, 13, 12, 1000, null, ['서북'], 0, ['갑주를 두른 기병입니다.']],
|
||||
[23, GameUnitConstBase::T_CAVALRY, '돌격기병', 200, 100, 8, 5, 0, 13, 11, 2000, ['흉노'], null, 0, ['저돌적으로 공격합니다.']],
|
||||
[24, GameUnitConstBase::T_CAVALRY, '철기병', 100, 200, 7, 5, 0, 11, 13, 2000, ['강'], null, 0, ['철갑을 두른 기병입니다.']],
|
||||
[25, GameUnitConstBase::T_CAVALRY, '수렵기병', 150, 100, 8, 15, 0, 12, 12, 2000, ['산월'], null, 0, ['날쎄고 빠른 기병입니다.']],
|
||||
[26, GameUnitConstBase::T_CAVALRY, '맹수병', 250, 200, 6, 0, 0, 16, 16, 2000, ['남만'], null, 0, ['어느 누구보다 강력합니다.']],
|
||||
[27, GameUnitConstBase::T_CAVALRY, '호표기병', 200, 150, 7, 5, 0, 14, 14, 3000, ['허창'], null, 0, ['정예 기병입니다.']],
|
||||
[
|
||||
20, self::T_CAVALRY, '기병',
|
||||
150, 100, 7, 5, 0, 11, 11,
|
||||
0, null, null, 0,
|
||||
[self::T_FOOTMAN=>1.2, self::T_ARCHER=>0.8, self::T_SIEGE=>1.2],
|
||||
[self::T_FOOTMAN=>0.8, self::T_ARCHER=>1.2, self::T_SIEGE=>0.8],
|
||||
['표준적인 기병입니다.','기병은 공격특화입니다.']
|
||||
],
|
||||
[
|
||||
21, self::T_CAVALRY, '백마병',
|
||||
200, 100, 7, 5, 0, 12, 13,
|
||||
1000, null, ['하북'], 0,
|
||||
[self::T_FOOTMAN=>1.2, self::T_ARCHER=>0.8, self::T_SIEGE=>1.2],
|
||||
[self::T_FOOTMAN=>0.8, self::T_ARCHER=>1.2, self::T_SIEGE=>0.8],
|
||||
['백마의 위용을 보여줍니다.']
|
||||
],
|
||||
[
|
||||
22, self::T_CAVALRY, '중장기병',
|
||||
150, 150, 7, 5, 0, 13, 12,
|
||||
1000, null, ['서북'], 0,
|
||||
[self::T_FOOTMAN=>1.2, self::T_ARCHER=>0.8, self::T_SIEGE=>1.2],
|
||||
[self::T_FOOTMAN=>0.8, self::T_ARCHER=>1.2, self::T_SIEGE=>0.8],
|
||||
['갑주를 두른 기병입니다.']
|
||||
],
|
||||
[
|
||||
23, self::T_CAVALRY, '돌격기병',
|
||||
200, 100, 8, 5, 0, 13, 11,
|
||||
2000, ['흉노'], null, 0,
|
||||
[self::T_FOOTMAN=>1.2, self::T_ARCHER=>0.8, self::T_SIEGE=>1.2],
|
||||
[self::T_FOOTMAN=>0.8, self::T_ARCHER=>1.2, self::T_SIEGE=>0.8],
|
||||
['저돌적으로 공격합니다.']
|
||||
],
|
||||
[
|
||||
24, self::T_CAVALRY, '철기병',
|
||||
100, 200, 7, 5, 0, 11, 13,
|
||||
2000, ['강'], null, 0,
|
||||
[self::T_FOOTMAN=>1.2, self::T_ARCHER=>0.8, self::T_SIEGE=>1.2],
|
||||
[self::T_FOOTMAN=>0.8, self::T_ARCHER=>1.2, self::T_SIEGE=>0.8],
|
||||
['철갑을 두른 기병입니다.']],
|
||||
[
|
||||
25, self::T_CAVALRY, '수렵기병',
|
||||
150, 100, 8, 15, 0, 12, 12,
|
||||
2000, ['산월'], null, 0,
|
||||
[self::T_FOOTMAN=>1.2, self::T_ARCHER=>0.8, self::T_SIEGE=>1.2],
|
||||
[self::T_FOOTMAN=>0.8, self::T_ARCHER=>1.2, self::T_SIEGE=>0.8],
|
||||
['날쎄고 빠른 기병입니다.']
|
||||
],
|
||||
[
|
||||
26, self::T_CAVALRY, '맹수병',
|
||||
250, 200, 6, 0, 0, 16, 16,
|
||||
2000, ['남만'], null, 0,
|
||||
[self::T_FOOTMAN=>1.2, self::T_ARCHER=>0.8, self::T_SIEGE=>1.2],
|
||||
[self::T_FOOTMAN=>0.8, self::T_ARCHER=>1.2, self::T_SIEGE=>0.8],
|
||||
['어느 누구보다 강력합니다.']
|
||||
],
|
||||
[
|
||||
27, self::T_CAVALRY, '호표기병',
|
||||
200, 150, 7, 5, 0, 14, 14,
|
||||
3000, ['허창'], null, 0,
|
||||
[self::T_FOOTMAN=>1.2, self::T_ARCHER=>0.8, self::T_SIEGE=>1.2],
|
||||
[self::T_FOOTMAN=>0.8, self::T_ARCHER=>1.2, self::T_SIEGE=>0.8],
|
||||
['정예 기병입니다.']
|
||||
],
|
||||
|
||||
[30, GameUnitConstBase::T_WIZARD, '귀병', 80, 80, 7, 5, 0.5, 9, 9, 0, null, null, 0, ['계략을 사용하는 병종입니다.']],
|
||||
[31, GameUnitConstBase::T_WIZARD, '신귀병', 80, 80, 7, 20, 0.6, 10, 10, 1000, null, ['초'], 0, ['신출귀몰한 귀병입니다.']],
|
||||
[32, GameUnitConstBase::T_WIZARD, '백귀병', 80, 130, 7, 5, 0.6, 9, 11, 2000, ['오환'], null, 0, ['저렴하고 튼튼합니다.']],
|
||||
[33, GameUnitConstBase::T_WIZARD, '흑귀병', 130, 80, 7, 5, 0.6, 11, 9, 2000, ['왜'], null, 0, ['저렴하고 강력합니다.']],
|
||||
[34, GameUnitConstBase::T_WIZARD, '악귀병', 130, 130, 7, 0, 0.6, 12, 12, 3000, ['장안'], null, 0, ['백병전에도 능숙합니다.']],
|
||||
[35, GameUnitConstBase::T_WIZARD, '남귀병', 60, 60, 7, 10, 0.8, 8, 8, 1000, null, null, 0, ['전투를 포기하고 계략에 몰두합니다.']],
|
||||
[36, GameUnitConstBase::T_WIZARD, '황귀병', 110, 110, 7, 0, 0.8, 13, 10, 3000, ['낙양'], null, 0, ['고도로 훈련된 귀병입니다.']],
|
||||
[37, GameUnitConstBase::T_WIZARD, '천귀병', 80, 130, 7, 15, 0.6, 11, 12, 3000, ['성도'], null, 0, ['갑주를 두른 귀병입니다.']],
|
||||
[38, GameUnitConstBase::T_WIZARD, '마귀병', 130, 80, 7, 15, 0.6, 12, 11, 3000, ['업'], null, 0, ['날카로운 무기를 가진 귀병입니다.']],
|
||||
[
|
||||
30, self::T_WIZARD, '귀병',
|
||||
80, 80, 7, 5, 0.5, 9, 9,
|
||||
0, null, null, 0,
|
||||
[self::T_SIEGE=>1.2],
|
||||
[self::T_SIEGE=>0.8],
|
||||
['계략을 사용하는 병종입니다.']
|
||||
],
|
||||
[
|
||||
31, self::T_WIZARD, '신귀병',
|
||||
80, 80, 7, 20, 0.6, 10, 10,
|
||||
1000, null, ['초'], 0,
|
||||
[self::T_SIEGE=>1.2],
|
||||
[self::T_SIEGE=>0.8],
|
||||
['신출귀몰한 귀병입니다.']
|
||||
],
|
||||
[
|
||||
32, self::T_WIZARD, '백귀병',
|
||||
80, 130, 7, 5, 0.6, 9, 11,
|
||||
2000, ['오환'], null, 0,
|
||||
[self::T_SIEGE=>1.2],
|
||||
[self::T_SIEGE=>0.8],
|
||||
['저렴하고 튼튼합니다.']
|
||||
],
|
||||
[
|
||||
33, self::T_WIZARD, '흑귀병',
|
||||
130, 80, 7, 5, 0.6, 11, 9,
|
||||
2000, ['왜'], null, 0,
|
||||
[self::T_SIEGE=>1.2],
|
||||
[self::T_SIEGE=>0.8],
|
||||
['저렴하고 강력합니다.']
|
||||
],
|
||||
[
|
||||
34, self::T_WIZARD, '악귀병',
|
||||
130, 130, 7, 0, 0.6, 12, 12,
|
||||
3000, ['장안'], null, 0,
|
||||
[self::T_SIEGE=>1.2],
|
||||
[self::T_SIEGE=>0.8],
|
||||
['백병전에도 능숙합니다.']
|
||||
],
|
||||
[
|
||||
35, self::T_WIZARD, '남귀병',
|
||||
60, 60, 7, 10, 0.8, 8, 8,
|
||||
1000, null, null, 0,
|
||||
[self::T_SIEGE=>1.2],
|
||||
[self::T_SIEGE=>0.8],
|
||||
['전투를 포기하고 계략에 몰두합니다.']
|
||||
],
|
||||
[
|
||||
36, self::T_WIZARD, '황귀병',
|
||||
110, 110, 7, 0, 0.8, 13, 10,
|
||||
3000, ['낙양'], null, 0,
|
||||
[self::T_SIEGE=>1.2],
|
||||
[self::T_SIEGE=>0.8],
|
||||
['고도로 훈련된 귀병입니다.']
|
||||
],
|
||||
[
|
||||
37, self::T_WIZARD, '천귀병',
|
||||
80, 130, 7, 15, 0.6, 11, 12,
|
||||
3000, ['성도'], null, 0,
|
||||
[self::T_SIEGE=>1.2],
|
||||
[self::T_SIEGE=>0.8],
|
||||
['갑주를 두른 귀병입니다.']
|
||||
],
|
||||
[
|
||||
38, self::T_WIZARD, '마귀병',
|
||||
130, 80, 7, 15, 0.6, 12, 11,
|
||||
3000, ['업'], null, 0,
|
||||
[self::T_SIEGE=>1.2],
|
||||
[self::T_SIEGE=>0.8],
|
||||
['날카로운 무기를 가진 귀병입니다.']
|
||||
],
|
||||
|
||||
[40, GameUnitConstBase::T_SIEGE, '정란', 100, 100, 6, 0, 0, 15, 5, 0, null, null, 3, ['높은 구조물 위에서 공격합니다.']],
|
||||
[41, GameUnitConstBase::T_SIEGE, '충차', 150, 100, 6, 0, 0, 20, 5, 1000, null, null, 0, ['엄청난 위력으로 성벽을 부수어버립니다.']],
|
||||
[42, GameUnitConstBase::T_SIEGE, '벽력거', 200, 100, 6, 0, 0, 25, 5, 3000, ['업'], null, 0, ['상대에게 돌덩이를 날립니다.']],
|
||||
[43, GameUnitConstBase::T_SIEGE, '목우', 50, 200, 5, 0, 0, 30, 5, 3000, ['성도'], null, 0, ['상대를 저지하는 특수병기입니다.']]
|
||||
[
|
||||
40, self::T_SIEGE, '정란',
|
||||
100, 100, 6, 0, 0, 15, 5,
|
||||
0, null, null, 3,
|
||||
[self::T_FOOTMAN=>0.8, self::T_ARCHER=>0.8, self::T_CAVALRY=>0.8, self::T_WIZARD=>0.8, self::T_CASTLE=>1.8],
|
||||
[self::T_FOOTMAN=>1.2, self::T_ARCHER=>1.2, self::T_CAVALRY=>1.2, self::T_WIZARD=>1.2],
|
||||
['높은 구조물 위에서 공격합니다.']
|
||||
],
|
||||
[
|
||||
41, self::T_SIEGE, '충차',
|
||||
150, 100, 6, 0, 0, 20, 5,
|
||||
1000, null, null, 0,
|
||||
[self::T_FOOTMAN=>0.8, self::T_ARCHER=>0.8, self::T_CAVALRY=>0.8, self::T_WIZARD=>0.8, self::T_CASTLE=>1.8],
|
||||
[self::T_FOOTMAN=>1.2, self::T_ARCHER=>1.2, self::T_CAVALRY=>1.2, self::T_WIZARD=>1.2],
|
||||
['엄청난 위력으로 성벽을 부수어버립니다.']
|
||||
],
|
||||
[
|
||||
42, self::T_SIEGE, '벽력거',
|
||||
200, 100, 6, 0, 0, 25, 5,
|
||||
3000, ['업'], null, 0,
|
||||
[self::T_FOOTMAN=>0.8, self::T_ARCHER=>0.8, self::T_CAVALRY=>0.8, self::T_WIZARD=>0.8, self::T_CASTLE=>1.8],
|
||||
[self::T_FOOTMAN=>1.2, self::T_ARCHER=>1.2, self::T_CAVALRY=>1.2, self::T_WIZARD=>1.2],
|
||||
['상대에게 돌덩이를 날립니다.']
|
||||
],
|
||||
[
|
||||
43, self::T_SIEGE, '목우',
|
||||
50, 200, 5, 0, 0, 30, 5,
|
||||
3000, ['성도'], null, 0,
|
||||
[self::T_FOOTMAN=>0.8, self::T_ARCHER=>0.8, self::T_CAVALRY=>0.8, self::T_WIZARD=>0.8],
|
||||
[self::T_FOOTMAN=>1.2, self::T_ARCHER=>1.2, self::T_CAVALRY=>1.2, self::T_WIZARD=>1.2],
|
||||
['상대를 저지하는 특수병기입니다.']
|
||||
]
|
||||
];
|
||||
|
||||
/**
|
||||
@@ -139,6 +362,8 @@ class GameUnitConstBase{
|
||||
$reqCities,
|
||||
$reqRegions,
|
||||
$reqYear,
|
||||
$attackCoef,
|
||||
$defenceCoef,
|
||||
$info
|
||||
] = $rawUnit;
|
||||
|
||||
@@ -174,6 +399,8 @@ class GameUnitConstBase{
|
||||
$reqCities,
|
||||
$reqRegions,
|
||||
$reqYear,
|
||||
$attackCoef,
|
||||
$defenceCoef,
|
||||
$info
|
||||
);
|
||||
|
||||
|
||||
@@ -16,6 +16,8 @@ class GameUnitDetail{
|
||||
public $reqCities;
|
||||
public $reqRegions;
|
||||
public $reqYear;
|
||||
public $attackCoef;
|
||||
public $defenceCoef;
|
||||
public $info;
|
||||
|
||||
public function __construct(
|
||||
@@ -33,6 +35,8 @@ class GameUnitDetail{
|
||||
?array $reqCities,
|
||||
?array $reqRegions,
|
||||
int $reqYear,
|
||||
array $attackCoef,
|
||||
array $defenceCoef,
|
||||
array $info
|
||||
){
|
||||
$this->name = $name;
|
||||
@@ -48,6 +52,8 @@ class GameUnitDetail{
|
||||
$this->reqCities = $reqCities;
|
||||
$this->reqRegions = $reqRegions;
|
||||
$this->reqYear = $reqYear;
|
||||
$this->attackCoef = $attackCoef;
|
||||
$this->defenceCoef = $defenceCoef;
|
||||
$this->info = $info;
|
||||
}
|
||||
|
||||
@@ -55,6 +61,22 @@ class GameUnitDetail{
|
||||
return $this->cost * getTechCost($tech) * $crew / 100;
|
||||
}
|
||||
|
||||
public function getAttackCoef($armType):float{
|
||||
if($armType instanceof GameUnitDetail){
|
||||
$armType = $armType->armType;
|
||||
}
|
||||
assert(is_numeric($armType), '$armType should be int or GameUnitDetail');
|
||||
return $this->attackCoef[$armType]??1;
|
||||
}
|
||||
|
||||
public function getDefenceCoef($armType):float{
|
||||
if($armType instanceof GameUnitDetail){
|
||||
$armType = $armType->armType;
|
||||
}
|
||||
assert(is_numeric($armType), '$armType should be int or GameUnitDetail');
|
||||
return $this->defenceCoef[$armType]??1;
|
||||
}
|
||||
|
||||
public function isValid($ownCities, $ownRegions, $relativeYear, $tech){
|
||||
if($relativeYear < $this->reqYear){
|
||||
return false;
|
||||
|
||||
Reference in New Issue
Block a user