forked from devsam/core
getTypename 삭제. GameUnitDetail::byID(), ::all()로 대체가능
This commit is contained in:
+2
-1
@@ -32,4 +32,5 @@ d_setting/*.php
|
||||
!*/d_setting/*.orig.php
|
||||
!*/d_setting/_*.php
|
||||
|
||||
**/old/*
|
||||
**/old/*
|
||||
test.php
|
||||
|
||||
+2
-2
@@ -150,7 +150,7 @@ if($isgen == "장수공격" || $isgen == "성벽공격" || $isgen == "장수평
|
||||
while($phase < $warphase) {
|
||||
// 장수가 없어서 도시 공격
|
||||
if($opposecount == 0) {
|
||||
$msg .= "<C>●</>".getTypename($general['crewtype'])."(으)로 성을 <M>공격</>합니다.<br>";
|
||||
$msg .= "<C>●</>".GameUnitConst::byID($general['crewtype'])->name."(으)로 성을 <M>공격</>합니다.<br>";
|
||||
|
||||
$mykillnum = 0; $mydeathnum = 0;
|
||||
while($phase < $warphase) {
|
||||
@@ -340,7 +340,7 @@ if($isgen == "장수공격" || $isgen == "성벽공격" || $isgen == "장수평
|
||||
}
|
||||
// 장수 대결
|
||||
} else {
|
||||
$msg .= "<C>●</>".getTypename($general['crewtype'])."(으)로 <Y>수비장수</>의 ".getTypename($oppose['crewtype'])."(을)를 공격합니다.<br>";
|
||||
$msg .= "<C>●</>".GameUnitConst::byID($general['crewtype'])->name."(으)로 <Y>수비장수</>의 ".GameUnitConst::byID($oppose['crewtype'])->name."(을)를 공격합니다.<br>";
|
||||
|
||||
$mykillnum = 0; $mydeathnum = 0;
|
||||
while($phase < $warphase) {
|
||||
|
||||
@@ -288,7 +288,7 @@ for($j=0; $j < $gencount; $j++) {
|
||||
|
||||
echo "
|
||||
<td align=center>$mode</td>
|
||||
<td align=center>".getTypename($general['crewtype'])."</td>
|
||||
<td align=center>".GameUnitConst::byId($general['crewtype'])->name."</td>
|
||||
<td align=center>{$general['crew']}</td>
|
||||
<td align=center>{$general['train']}</td>
|
||||
<td align=center>{$general['atmos']}</td>";
|
||||
|
||||
+1
-1
@@ -152,7 +152,7 @@ for($j=0; $j < $gencount; $j++) {
|
||||
<td align=center>{$general['rice']}</td>
|
||||
<td align=center>$city</td>
|
||||
<td align=center>$mode</td>
|
||||
<td align=center>".getTypename($general['crewtype'])."</td>
|
||||
<td align=center>".GameUnitConst::byId($general['crewtype'])->name."</td>
|
||||
<td align=center>{$general['crew']}</td>
|
||||
<td align=center>{$general['train']}</td>
|
||||
<td align=center>{$general['atmos']}</td>";
|
||||
|
||||
+1
-1
@@ -892,7 +892,7 @@ function generalInfo($connect, $no) {
|
||||
$level = $city['name']." ".$level;
|
||||
}
|
||||
$call = getCall($general['leader'], $general['power'], $general['intel']);
|
||||
$typename = getTypename($general['crewtype']);
|
||||
$typename = GameUnitConst::byId($general['crewtype'])->name;
|
||||
$weapname = getWeapName($general['weap']);
|
||||
$bookname = getBookName($general['book']);
|
||||
$horsename = getHorseName($general['horse']);
|
||||
|
||||
@@ -52,12 +52,12 @@ function getTurn($connect, $general, $type, $font=1) {
|
||||
case 9: $str[$i] = "물자 조달"; break; //조달
|
||||
|
||||
case 11: //징병
|
||||
$third = getTypename($command[2]);
|
||||
$third = GameUnitConst::byID($command[2])->name;
|
||||
$double = $command[1];
|
||||
$str[$i] = "【{$third}】 {$double}00명 징병";
|
||||
break;
|
||||
case 12: //모병
|
||||
$third = getTypename($command[2]);
|
||||
$third = GameUnitConst::byID($command[2])->name;
|
||||
$double = $command[1];
|
||||
$str[$i] = "【{$third}】 {$double}00명 모병";
|
||||
break;
|
||||
|
||||
@@ -359,49 +359,6 @@ function getHonor($experience) {
|
||||
return $honor;
|
||||
}
|
||||
|
||||
function getTypename($type) {
|
||||
switch($type) {
|
||||
case 0: $typename = '보병'; break;
|
||||
case 1: $typename = '청주병'; break;
|
||||
case 2: $typename = '수병'; break;
|
||||
case 3: $typename = '자객병'; break;
|
||||
case 4: $typename = '근위병'; break;
|
||||
case 5: $typename = '등갑병'; break;
|
||||
|
||||
case 10: $typename = '궁병'; break;
|
||||
case 11: $typename = '궁기병'; break;
|
||||
case 12: $typename = '연노병'; break;
|
||||
case 13: $typename = '강궁병'; break;
|
||||
case 14: $typename = '석궁병'; break;
|
||||
|
||||
case 20: $typename = '기병'; break;
|
||||
case 21: $typename = '백마병'; break;
|
||||
case 22: $typename = '중장기병'; break;
|
||||
case 23: $typename = '돌격기병'; break;
|
||||
case 24: $typename = '철기병'; break;
|
||||
case 25: $typename = '수렵기병'; break;
|
||||
case 26: $typename = '맹수병'; break;
|
||||
case 27: $typename = '호표기병'; break;
|
||||
|
||||
case 30: $typename = '귀병'; break;
|
||||
case 31: $typename = '신귀병'; break;
|
||||
case 32: $typename = '백귀병'; break;
|
||||
case 33: $typename = '흑귀병'; break;
|
||||
case 34: $typename = '악귀병'; break;
|
||||
case 35: $typename = '남귀병'; break;
|
||||
case 36: $typename = '황귀병'; break;
|
||||
case 37: $typename = '천귀병'; break;
|
||||
case 38: $typename = '마귀병'; break;
|
||||
|
||||
case 40: $typename = '정란'; break;
|
||||
case 41: $typename = '충차'; break;
|
||||
case 42: $typename = '벽력거'; break;
|
||||
case 43: $typename = '목우'; break;
|
||||
}
|
||||
return $typename;
|
||||
}
|
||||
|
||||
|
||||
function getExpLevel($experience) {
|
||||
if($experience < 1000) {
|
||||
$level = floor($experience / 100);
|
||||
|
||||
@@ -1089,12 +1089,19 @@ function checkStatistic($connect) {
|
||||
$crewtype = '';
|
||||
$types = array(0, 1, 2, 3, 4, 5, 10, 11, 12, 13, 14, 20, 21, 22, 23, 24, 25, 26, 27, 30, 31, 32, 33, 34, 35, 36, 37, 38, 40, 41, 42, 43);
|
||||
$count = count($types);
|
||||
foreach(GameUnitConst::all() as $unit){
|
||||
$userCnt = DB::db()->queryFirstField(
|
||||
"SELECT count(*) as type from general where crewtype=%i and crew>=100",
|
||||
$unit->id
|
||||
);
|
||||
$crewtype .= "{$unit->name}({$userCnt}), ";
|
||||
}
|
||||
for($i=0; $i < $count; $i++) {
|
||||
$query = "select count(*) as type from general where crewtype={$types[$i]} and crew>=100";
|
||||
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
$general = MYDB_fetch_array($result);
|
||||
|
||||
$crewtype .= getTypeName($types[$i])."({$general['type']}), ";
|
||||
|
||||
}
|
||||
|
||||
$query = "
|
||||
|
||||
+14
-10
@@ -953,7 +953,7 @@ function process_11($connect, &$general, $type) {
|
||||
} elseif($city['rate'] < 20) {
|
||||
$log[] = "<C>●</>{$admin['month']}월:민심이 낮아 주민들이 도망갑니다. $dtype 실패. <1>$date</>";
|
||||
} else {
|
||||
$log[] = "<C>●</>{$admin['month']}월:".getTypename($armtype)."을(를) <C>{$crew}00</>명 {$dtype}했습니다. <1>$date</>";
|
||||
$log[] = "<C>●</>{$admin['month']}월:".GameUnitConst::byId($armtype)->name."을(를) <C>{$crew}00</>명 {$dtype}했습니다. <1>$date</>";
|
||||
$exp = $crew;
|
||||
$ded = $crew;
|
||||
// 숙련도 증가
|
||||
@@ -1558,6 +1558,7 @@ function process_31($connect, &$general) {
|
||||
$log = array();
|
||||
$alllog = array();
|
||||
$date = substr($general['turntime'],11,5);
|
||||
$msg = [];
|
||||
|
||||
$query = "select year,month,develcost from game where no='1'";
|
||||
$result = MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
@@ -1602,17 +1603,20 @@ function process_31($connect, &$general) {
|
||||
} else {
|
||||
$alllog[] = "<C>●</>{$admin['month']}월:누군가가 <G><b>{$city['name']}</b></>(을)를 살피는 것 같습니다.";
|
||||
$log[] = "<C>●</>{$admin['month']}월:<G><b>{$city['name']}</b></>의 많은 정보를 얻었습니다. <1>$date</>";
|
||||
$msg[count($msg)] = "【<S>병종</>】";
|
||||
for($i=0; $i <= 5; $i++) { if($typecount[$i] != 0) { $msg[count($msg)] = StringUtil::SubStr(getTypename($i), 0, 2).":$typecount[$i]"; } }
|
||||
for($i=10; $i <= 14; $i++) { if($typecount[$i] != 0) { $msg[count($msg)] = StringUtil::SubStr(getTypename($i), 0, 2).":$typecount[$i]"; } }
|
||||
for($i=20; $i <= 27; $i++) { if($typecount[$i] != 0) { $msg[count($msg)] = StringUtil::SubStr(getTypename($i), 0, 2).":$typecount[$i]"; } }
|
||||
for($i=30; $i <= 38; $i++) { if($typecount[$i] != 0) { $msg[count($msg)] = StringUtil::SubStr(getTypename($i), 0, 2).":$typecount[$i]"; } }
|
||||
for($i=40; $i <= 43; $i++) { if($typecount[$i] != 0) { $msg[count($msg)] = StringUtil::SubStr(getTypename($i), 0, 2).":$typecount[$i]"; } }
|
||||
$msg[] = "【<S>병종</>】";
|
||||
|
||||
$count = ceil(count($msg) / 8) * 8;
|
||||
for($i=$count; $i > 0; $i-=8) {
|
||||
$log[] = "{$msg[$i-8]} {$msg[$i-7]} {$msg[$i-6]} {$msg[$i-5]} {$msg[$i-4]} {$msg[$i-3]} {$msg[$i-2]} {$msg[$i-1]}";
|
||||
foreach(GameUnitConst::all() as $unit){
|
||||
if($typecount[$unit->id] == 0){
|
||||
continue;
|
||||
}
|
||||
|
||||
$unitStr = mb_substr($unit->name, 0, 2);
|
||||
$msg[] = "{$unitStr}:{$typecount[$unit->id]}";
|
||||
}
|
||||
|
||||
$log[] = join(' ', $msg);
|
||||
$msg = [];
|
||||
|
||||
$log[] = "【<M>첩보</>】농업:{$city['agri']}, 상업:{$city['comm']}, 치안:{$city['secu']}, 수비:{$city['def']}, 성벽:{$city['wall']}";
|
||||
$log[] = "【<G>{$city['name']}</>】주민:{$city['pop']}, 민심:{$city['rate']}, 장수:$gencount, 병력:$crew";
|
||||
|
||||
|
||||
+18
-18
@@ -133,8 +133,8 @@ function processWar($connect, $general, $city) {
|
||||
break;
|
||||
// 장수가 없어서 도시 공격
|
||||
} elseif($opposecount == 0) {
|
||||
$alllog[] = "<C>●</>{$game['month']}월:<Y>{$general['name']}</>(이)가 ".getTypename($general['crewtype'])."(으)로 성벽을 공격합니다.";
|
||||
$log[] = "<C>●</>".getTypename($general['crewtype'])."(으)로 성벽을 <M>공격</>합니다.";
|
||||
$alllog[] = "<C>●</>{$game['month']}월:<Y>{$general['name']}</>(이)가 ".GameUnitConst::byId($general['crewtype'])->name."(으)로 성벽을 공격합니다.";
|
||||
$log[] = "<C>●</>".GameUnitConst::byId($general['crewtype'])->name."(으)로 성벽을 <M>공격</>합니다.";
|
||||
|
||||
$general['train'] += 1; //훈련 상승
|
||||
if($general['train'] > $_maximumtrain) { $general['train'] = $_maximumtrain; }
|
||||
@@ -380,7 +380,7 @@ function processWar($connect, $general, $city) {
|
||||
}
|
||||
|
||||
$render_attacker = [
|
||||
'crewtype' => StringUtil::SubStr(getTypename($general['crewtype']), 0, 2),
|
||||
'crewtype' => StringUtil::SubStr(GameUnitConst::byId($general['crewtype'])->name, 0, 2),
|
||||
'name'=> $general['name'],
|
||||
'remain_crew' => $general['crew'],
|
||||
'killed_crew' => -$mydeathnum
|
||||
@@ -494,14 +494,14 @@ function processWar($connect, $general, $city) {
|
||||
break;
|
||||
// 공격 장수 병사 소진시 실패 처리
|
||||
} elseif($general['crew'] <= 0) {
|
||||
$alllog[] = "<C>●</>{$game['month']}월:<Y>{$general['name']}</>의 ".getTypename($general['crewtype'])."(이)가 퇴각했습니다.";
|
||||
$alllog[] = "<C>●</>{$game['month']}월:<Y>{$general['name']}</>의 ".GameUnitConst::byId($general['crewtype'])->name."(이)가 퇴각했습니다.";
|
||||
$log[] = "<C>●</>퇴각했습니다.";
|
||||
|
||||
$query = "update general set deathnum=deathnum+1 where no='{$general['no']}'";
|
||||
MYDB_query($query, $connect) or Error(__LINE__.MYDB_error($connect),"");
|
||||
break;
|
||||
} elseif($myRice <= round($general['crew']/100)) {
|
||||
$alllog[] = "<C>●</>{$game['month']}월:<Y>{$general['name']}</>의 ".getTypename($general['crewtype'])."(이)가 퇴각했습니다.";
|
||||
$alllog[] = "<C>●</>{$game['month']}월:<Y>{$general['name']}</>의 ".GameUnitConst::byId($general['crewtype'])->name."(이)가 퇴각했습니다.";
|
||||
$log[] = "<C>●</>군량 부족으로 퇴각합니다.";
|
||||
|
||||
$query = "update general set deathnum=deathnum+1 where no='{$general['no']}'";
|
||||
@@ -511,9 +511,9 @@ function processWar($connect, $general, $city) {
|
||||
// 장수 대결
|
||||
} else {
|
||||
$oppose = MYDB_fetch_array($result);
|
||||
$alllog[] = "<C>●</>{$game['month']}월:<Y>{$general['name']}</>의 ".getTypename($general['crewtype'])."(와)과 <Y>{$oppose['name']}</>의 ".getTypename($oppose['crewtype'])."(이)가 대결합니다.";
|
||||
$log[] = "<C>●</>".getTypename($general['crewtype'])."(으)로 <Y>{$oppose['name']}</>의 ".getTypename($oppose['crewtype'])."(을)를 <M>공격</>합니다.";
|
||||
$opplog[count($opplog)] = "<C>●</>".getTypename($oppose['crewtype'])."(으)로 <Y>{$general['name']}</>의 ".getTypename($general['crewtype'])."(을)를 <M>수비</>합니다.";
|
||||
$alllog[] = "<C>●</>{$game['month']}월:<Y>{$general['name']}</>의 ".GameUnitConst::byId($general['crewtype'])->name."(와)과 <Y>{$oppose['name']}</>의 ".GameUnitConst::byId($oppose['crewtype'])->name."(이)가 대결합니다.";
|
||||
$log[] = "<C>●</>".GameUnitConst::byId($general['crewtype'])->name."(으)로 <Y>{$oppose['name']}</>의 ".GameUnitConst::byId($oppose['crewtype'])->name."(을)를 <M>공격</>합니다.";
|
||||
$opplog[count($opplog)] = "<C>●</>".GameUnitConst::byId($oppose['crewtype'])->name."(으)로 <Y>{$general['name']}</>의 ".GameUnitConst::byId($general['crewtype'])->name."(을)를 <M>수비</>합니다.";
|
||||
|
||||
$oppAtmos = 0;
|
||||
if($oppose['item'] == 3) {
|
||||
@@ -1257,13 +1257,13 @@ function processWar($connect, $general, $city) {
|
||||
}
|
||||
|
||||
$render_attacker = [
|
||||
'crewtype' => StringUtil::SubStr(getTypename($general['crewtype']), 0, 2),
|
||||
'crewtype' => StringUtil::SubStr(GameUnitConst::byId($general['crewtype'])->name, 0, 2),
|
||||
'name'=> $general['name'],
|
||||
'remain_crew' => $general['crew'],
|
||||
'killed_crew' => -$mydeathnum
|
||||
];
|
||||
$render_defender = [
|
||||
'crewtype' => StringUtil::SubStr(getTypename($oppose['crewtype']), 0, 2),
|
||||
'crewtype' => StringUtil::SubStr(GameUnitConst::byId($oppose['crewtype'])->name, 0, 2),
|
||||
'name'=> $oppose['name'],
|
||||
'remain_crew' => $oppose['crew'],
|
||||
'killed_crew' => -$opdeathnum
|
||||
@@ -1363,12 +1363,12 @@ function processWar($connect, $general, $city) {
|
||||
// 상대 병사 소진이나 쌀 소진시 다음 장수
|
||||
if($oppose['crew'] <= 0 || ($opRice <= round($oppose['crew']/100) && $general['crew'] > 0)) {
|
||||
if($opRice <= round($oppose['crew']/100)) {
|
||||
$alllog[] = "<C>●</>{$game['month']}월:<Y>{$oppose['name']}</>의 ".getTypename($oppose['crewtype'])."(이)가 패퇴했습니다.";
|
||||
$log[] = "<C>●</><Y>{$oppose['name']}</>의 ".getTypename($oppose['crewtype'])."(이)가 패퇴했습니다.";
|
||||
$alllog[] = "<C>●</>{$game['month']}월:<Y>{$oppose['name']}</>의 ".GameUnitConst::byId($oppose['crewtype'])->name."(이)가 패퇴했습니다.";
|
||||
$log[] = "<C>●</><Y>{$oppose['name']}</>의 ".GameUnitConst::byId($oppose['crewtype'])->name."(이)가 패퇴했습니다.";
|
||||
$opplog[count($opplog)] = "<C>●</>군량 부족으로 패퇴합니다.";
|
||||
} else {
|
||||
$alllog[] = "<C>●</>{$game['month']}월:<Y>{$oppose['name']}</>의 ".getTypename($oppose['crewtype'])."(이)가 전멸했습니다.";
|
||||
$log[] = "<C>●</><Y>{$oppose['name']}</>의 ".getTypename($oppose['crewtype'])."(이)가 전멸했습니다.";
|
||||
$alllog[] = "<C>●</>{$game['month']}월:<Y>{$oppose['name']}</>의 ".GameUnitConst::byId($oppose['crewtype'])->name."(이)가 전멸했습니다.";
|
||||
$log[] = "<C>●</><Y>{$oppose['name']}</>의 ".GameUnitConst::byId($oppose['crewtype'])->name."(이)가 전멸했습니다.";
|
||||
$opplog[count($opplog)] = "<C>●</>전멸했습니다.";
|
||||
}
|
||||
$opposecount--;
|
||||
@@ -1401,13 +1401,13 @@ function processWar($connect, $general, $city) {
|
||||
// 공격 장수 병사 소진이나 쌀 소진시 실패 처리
|
||||
} elseif($general['crew'] <= 0 || $myRice <= round($general['crew']/100)) {
|
||||
if($myRice <= round($general['crew']/100)) {
|
||||
$alllog[] = "<C>●</>{$game['month']}월:<Y>{$general['name']}</>의 ".getTypename($general['crewtype'])."(이)가 퇴각했습니다.";
|
||||
$alllog[] = "<C>●</>{$game['month']}월:<Y>{$general['name']}</>의 ".GameUnitConst::byId($general['crewtype'])->name."(이)가 퇴각했습니다.";
|
||||
$log[] = "<C>●</>군량 부족으로 퇴각합니다.";
|
||||
$opplog[count($opplog)] = "<C>●</><Y>{$general['name']}</>의 ".getTypename($general['crewtype'])."(이)가 퇴각했습니다.";
|
||||
$opplog[count($opplog)] = "<C>●</><Y>{$general['name']}</>의 ".GameUnitConst::byId($general['crewtype'])->name."(이)가 퇴각했습니다.";
|
||||
} else {
|
||||
$alllog[] = "<C>●</>{$game['month']}월:<Y>{$general['name']}</>의 ".getTypename($general['crewtype'])."(이)가 퇴각했습니다.";
|
||||
$alllog[] = "<C>●</>{$game['month']}월:<Y>{$general['name']}</>의 ".GameUnitConst::byId($general['crewtype'])->name."(이)가 퇴각했습니다.";
|
||||
$log[] = "<C>●</>퇴각했습니다.";
|
||||
$opplog[count($opplog)] = "<C>●</><Y>{$general['name']}</>의 ".getTypename($general['crewtype'])."(이)가 퇴각했습니다.";
|
||||
$opplog[count($opplog)] = "<C>●</><Y>{$general['name']}</>의 ".GameUnitConst::byId($general['crewtype'])->name."(이)가 퇴각했습니다.";
|
||||
}
|
||||
|
||||
// 경험치 상승
|
||||
|
||||
+2
-2
@@ -317,7 +317,7 @@ function calc(cost, formnum) {
|
||||
<td colspan=10 align=center id=bg2>
|
||||
현재 기술력 : <input type=text style=text-align:right;color:white;background-color:black size=5 readonly value=".getTechCall($nation['tech']).">
|
||||
현재 통솔 : <input type=text style=text-align:right;color:white;background-color:black size=3 readonly value=$leader>
|
||||
현재 병종 : <input type=text size=8 style=text-align:right;color:white;background-color:black readonly value=".getTypename($me['crewtype']).">
|
||||
현재 병종 : <input type=text size=8 style=text-align:right;color:white;background-color:black readonly value=".GameUnitConst::byID($me['crewtype'])->name.">
|
||||
현재 병사 : <input type=text size=5 style=text-align:right;color:white;background-color:black readonly value={$me['crew']}>
|
||||
현재 자금 : <input type=text size=5 style=text-align:right;color:white;background-color:black readonly value={$me['gold']}>
|
||||
</td>
|
||||
@@ -523,7 +523,7 @@ function calc(cost, formnum) {
|
||||
<td colspan=10 align=center id=bg2>
|
||||
현재 기술력 : <input type=text style=text-align:right;color:white;background-color:black size=5 readonly value=".getTechCall($nation['tech']).">
|
||||
현재 통솔 : <input type=text style=text-align:right;color:white;background-color:black size=3 readonly value=$leader>
|
||||
현재 병종 : <input type=text size=8 style=text-align:right;color:white;background-color:black readonly value=".getTypename($me['crewtype']).">
|
||||
현재 병종 : <input type=text size=8 style=text-align:right;color:white;background-color:black readonly value=".GameUnitConst::byID($me['crewtype'])->name.">
|
||||
현재 병사 : <input type=text size=5 style=text-align:right;color:white;background-color:black readonly value={$me['crew']}>
|
||||
현재 자금 : <input type=text size=5 style=text-align:right;color:white;background-color:black readonly value={$me['gold']}>
|
||||
</td>
|
||||
|
||||
Reference in New Issue
Block a user