아이템 구매 버그 수정, 아이템 호칭문제 수정

This commit is contained in:
2020-03-08 12:03:23 +09:00
parent c63085be15
commit 6722de4173
35 changed files with 100 additions and 39 deletions
+4 -2
View File
@@ -1567,8 +1567,10 @@ function tryUniqueItemLottery(General $general, string $acquireType='아이템')
$nationName = $general->getStaticNation()['name']; $nationName = $general->getStaticNation()['name'];
$generalName = $general->getName(); $generalName = $general->getName();
$josaYi = JosaUtil::pick($generalName, '이'); $josaYi = JosaUtil::pick($generalName, '이');
$itemName = getItemName($itemCode); $itemObj = buildItemClass($itemCode);
$josaUl = JosaUtil::pick($itemName, '을'); $itemName = $itemObj->getName();
$itemRawName = $itemObj->getRawName();
$josaUl = JosaUtil::pick($itemRawName, '을');
$general->setVar($itemType, $itemCode); $general->setVar($itemType, $itemCode);
+2 -2
View File
@@ -85,7 +85,7 @@ function processGoldIncome() {
." // 지급률 : ".tab2((string)round($ratio*100,2),5," ") ." // 지급률 : ".tab2((string)round($ratio*100,2),5," ")
." % // 결과금 : ".tab2((string)$nation['gold'],6," "); ." % // 결과금 : ".tab2((string)$nation['gold'],6," ");
$incomeLog = "<C>●</>이번 수입은 금 <C>$income</>입니다."; $incomeLog = "이번 수입은 금 <C>$income</>입니다.";
$db->update('nation', [ $db->update('nation', [
'gold'=>$nation['gold'] 'gold'=>$nation['gold']
@@ -364,7 +364,7 @@ function processRiceIncome() {
." // 지급률 : ".tab2((string)round($ratio*100,2),5," ") ." // 지급률 : ".tab2((string)round($ratio*100,2),5," ")
." % // 결과곡 : ".tab2((string)$nation['rice'],6," "); ." % // 결과곡 : ".tab2((string)$nation['rice'],6," ");
$incomeLog = "<C>●</>이번 수입은 쌀 <C>$income</>입니다."; $incomeLog = "이번 수입은 쌀 <C>$income</>입니다.";
$db->update('nation', [ $db->update('nation', [
'rice'=>$nation['rice'] 'rice'=>$nation['rice']
+18 -15
View File
@@ -860,56 +860,59 @@ function fight($tnmt_type, $tnmt, $phs, $group, $g1, $g2, $type) {
//아이템 로그 //아이템 로그
if(!$horse->isBuyable() && ($tnmt_type == 0 || $tnmt_type == 1)) { if(!$horse->isBuyable() && ($tnmt_type == 0 || $tnmt_type == 1)) {
$itemName = $horse->getName(); $itemName = $horse->getName();
$itemRawName = $horse->getRawName();
switch(rand()%4) { switch(rand()%4) {
case 0: case 0:
$josaYi = JosaUtil::pick($itemName, '이'); $josaYi = JosaUtil::pick($itemRawName, '이');
$log[] = "<S>●</> <Y>{$gen['name']}</>의 <S>{$itemName}</>{$josaYi} 포효합니다!"; break; $log[] = "<S>●</> <Y>{$gen['name']}</>의 <S>{$itemName}</>{$josaYi} 포효합니다!"; break;
case 1: case 1:
$josaYi = JosaUtil::pick($itemName, '이'); $josaYi = JosaUtil::pick($itemRawName, '이');
$log[] = "<S>●</> <Y>{$gen['name']}</>의 <S>{$itemName}</>{$josaYi} 그 위용을 뽐냅니다!"; break; $log[] = "<S>●</> <Y>{$gen['name']}</>의 <S>{$itemName}</>{$josaYi} 그 위용을 뽐냅니다!"; break;
case 2: case 2:
$josaYi = JosaUtil::pick($gen['name'], '이'); $josaYi = JosaUtil::pick($gen['name'], '이');
$josaUl = JosaUtil::pick($itemName, '을'); $josaUl = JosaUtil::pick($itemRawName, '을');
$log[] = "<S>●</> <Y>{$gen['name']}</>{$josaYi} <S>{$itemName}</>{$josaUl} 타고 있습니다!"; break; $log[] = "<S>●</> <Y>{$gen['name']}</>{$josaYi} <S>{$itemName}</>{$josaUl} 타고 있습니다!"; break;
case 3: case 3:
$josaYi = JosaUtil::pick($itemName, '이'); $josaYi = JosaUtil::pick($itemRawName, '이');
$log[] = "<S>●</> <Y>{$gen['name']}</>의 <S>{$itemName}</>{$josaYi} 갈기를 휘날립니다!"; break; $log[] = "<S>●</> <Y>{$gen['name']}</>의 <S>{$itemName}</>{$josaYi} 갈기를 휘날립니다!"; break;
} }
} }
if(!$weapon->isBuyable() && ($tnmt_type == 0 || $tnmt_type == 2)) { if(!$weapon->isBuyable() && ($tnmt_type == 0 || $tnmt_type == 2)) {
$itemName = $weapon->getName(); $itemName = $weapon->getName();
$itemRawName = $weapon->getRawName();
switch(rand()%4) { switch(rand()%4) {
case 0: case 0:
$josaYi = JosaUtil::pick($itemName, '이'); $josaYi = JosaUtil::pick($itemRawName, '이');
$log[] = "<S>●</> <Y>{$gen['name']}</>의 <S>{$itemName}</>{$josaYi} 번뜩입니다!"; break; $log[] = "<S>●</> <Y>{$gen['name']}</>의 <S>{$itemName}</>{$josaYi} 번뜩입니다!"; break;
case 1: case 1:
$josaYi = JosaUtil::pick($itemName, '이'); $josaYi = JosaUtil::pick($itemRawName, '이');
$log[] = "<S>●</> <Y>{$gen['name']}</>의 <S>{$itemName}</>{$josaYi} 푸르게 빛납니다!"; break; $log[] = "<S>●</> <Y>{$gen['name']}</>의 <S>{$itemName}</>{$josaYi} 푸르게 빛납니다!"; break;
case 2: case 2:
$log[] = "<S>●</> <Y>{$gen['name']}</>의 <S>{$itemName}</>에서 살기가 느껴집니다!"; break; $log[] = "<S>●</> <Y>{$gen['name']}</>의 <S>{$itemName}</>에서 살기가 느껴집니다!"; break;
case 3: case 3:
$josaYi = JosaUtil::pick($itemName, '이'); $josaYi = JosaUtil::pick($itemRawName, '이');
$log[] = "<S>●</> <Y>{$gen['name']}</>의 손에는 <S>{$itemName}</>{$josaYi} 쥐어져 있습니다!"; break; $log[] = "<S>●</> <Y>{$gen['name']}</>의 손에는 <S>{$itemName}</>{$josaYi} 쥐어져 있습니다!"; break;
} }
} }
if(!$book->isBuyable() && ($tnmt_type == 0 || $tnmt_type == 3)) { if(!$book->isBuyable() && ($tnmt_type == 0 || $tnmt_type == 3)) {
$itemName = $book->getName(); $itemName = $book->getName();
$itemRawName = $book->getRawName();
switch(rand()%4) { switch(rand()%4) {
case 0: case 0:
$josaYi = JosaUtil::pick($gen['name'], '이'); $josaYi = JosaUtil::pick($gen['name'], '이');
$josaUl = JosaUtil::pick(getItemName($gen['b']), '을'); $josaUl = JosaUtil::pick($itemRawName, '을');
$log[] = "<S>●</> <Y>{$gen['name']}</>{$josaYi} <S>".getItemName($gen['b'])."</>{$josaUl} 펼쳐듭니다!"; break; $log[] = "<S>●</> <Y>{$gen['name']}</>{$josaYi} <S>{$itemName}</>{$josaUl} 펼쳐듭니다!"; break;
case 1: case 1:
$josaYi = JosaUtil::pick($gen['name'], '이'); $josaYi = JosaUtil::pick($gen['name'], '이');
$josaUl = JosaUtil::pick(getItemName($gen['b']), '을'); $josaUl = JosaUtil::pick($itemRawName, '을');
$log[] = "<S>●</> <Y>{$gen['name']}</>{$josaYi} <S>".getItemName($gen['b'])."</>{$josaUl} 품에서 꺼냅니다!"; break; $log[] = "<S>●</> <Y>{$gen['name']}</>{$josaYi} <S>{$itemName}</>{$josaUl} 품에서 꺼냅니다!"; break;
case 2: case 2:
$josaYi = JosaUtil::pick($gen['name'], '이'); $josaYi = JosaUtil::pick($gen['name'], '이');
$josaUl = JosaUtil::pick(getItemName($gen['b']), '을'); $josaUl = JosaUtil::pick($itemRawName, '을');
$log[] = "<S>●</> <Y>{$gen['name']}</>{$josaYi} <S>".getItemName($gen['b'])."</>{$josaUl} 들고 있습니다!"; break; $log[] = "<S>●</> <Y>{$gen['name']}</>{$josaYi} <S>{$itemName}</>{$josaUl} 들고 있습니다!"; break;
case 3: case 3:
$josaYi = JosaUtil::pick(getItemName($gen['b']), '이'); $josaYi = JosaUtil::pick($itemRawName, '이');
$log[] = "<S>●</> <Y>{$gen['name']}</>의 손에는 <S>".getItemName($gen['b'])."</>{$josaYi} 쥐어져 있습니다!"; break; $log[] = "<S>●</> <Y>{$gen['name']}</>의 손에는 <S>{$itemName}</>{$josaYi} 쥐어져 있습니다!"; break;
} }
} }
} }
@@ -6,6 +6,7 @@ use \sammo\General;
class che_계략_삼략 extends \sammo\BaseItem{ class che_계략_삼략 extends \sammo\BaseItem{
protected $id = 22; protected $id = 22;
protected $rawName = '삼략';
protected $name = '삼략(계략)'; protected $name = '삼략(계략)';
protected $info = '[계략] 화계·탈취·파괴·선동 : 성공률 +20%p'; protected $info = '[계략] 화계·탈취·파괴·선동 : 성공률 +20%p';
protected $cost = 200; protected $cost = 200;
@@ -6,6 +6,7 @@ use \sammo\General;
class che_계략_육도 extends \sammo\BaseItem{ class che_계략_육도 extends \sammo\BaseItem{
protected $id = 21; protected $id = 21;
protected $rawName = '육도';
protected $name = '육도(계략)'; protected $name = '육도(계략)';
protected $info = '[계략] 화계·탈취·파괴·선동 : 성공률 +20%p'; protected $info = '[계략] 화계·탈취·파괴·선동 : 성공률 +20%p';
protected $cost = 200; protected $cost = 200;
@@ -6,6 +6,7 @@ use \sammo\General;
class che_계략_이추 extends \sammo\BaseItem{ class che_계략_이추 extends \sammo\BaseItem{
protected $id = 5; protected $id = 5;
protected $rawName = '이추';
protected $name = '이추(계략)'; protected $name = '이추(계략)';
protected $info = '[계략] 화계·탈취·파괴·선동 : 성공률 +10%p'; protected $info = '[계략] 화계·탈취·파괴·선동 : 성공률 +10%p';
protected $cost = 1000; protected $cost = 1000;
@@ -6,6 +6,7 @@ use \sammo\General;
class che_계략_향낭 extends \sammo\BaseItem{ class che_계략_향낭 extends \sammo\BaseItem{
protected $id = 5; protected $id = 5;
protected $rawName = '항냥';
protected $name = '항냥(계략)'; protected $name = '항냥(계략)';
protected $info = '[계략] 화계·탈취·파괴·선동 : 성공률 +20%p'; protected $info = '[계략] 화계·탈취·파괴·선동 : 성공률 +20%p';
protected $cost = 3000; protected $cost = 3000;
@@ -3,9 +3,10 @@ namespace sammo\ActionItem;
use \sammo\iAction; use \sammo\iAction;
use \sammo\General; use \sammo\General;
class che_사기_의적 extends \sammo\BaseItem{ class che_사기_두강 extends \sammo\BaseItem{
protected $id = 15; protected $id = 15;
protected $rawName = '두강주';
protected $name = '두강주(사기)'; protected $name = '두강주(사기)';
protected $info = '[전투] 사기 보정 +10'; protected $info = '[전투] 사기 보정 +10';
protected $cost = 200; protected $cost = 200;
@@ -6,6 +6,7 @@ use \sammo\General;
class che_사기_보령압주 extends \sammo\BaseItem{ class che_사기_보령압주 extends \sammo\BaseItem{
protected $id = 16; protected $id = 16;
protected $rawName = '보령압주';
protected $name = '보령압주(사기)'; protected $name = '보령압주(사기)';
protected $info = '[전투] 사기 보정 +10'; protected $info = '[전투] 사기 보정 +10';
protected $cost = 200; protected $cost = 200;
@@ -6,6 +6,7 @@ use \sammo\General;
class che_사기_의적주 extends \sammo\BaseItem{ class che_사기_의적주 extends \sammo\BaseItem{
protected $id = 14; protected $id = 14;
protected $rawName = '의적주';
protected $name = '의적주(사기)'; protected $name = '의적주(사기)';
protected $info = '[전투] 사기 보정 +10'; protected $info = '[전투] 사기 보정 +10';
protected $cost = 200; protected $cost = 200;
@@ -6,6 +6,7 @@ use \sammo\General;
class che_사기_초선화 extends \sammo\BaseItem{ class che_사기_초선화 extends \sammo\BaseItem{
protected $id = 20; protected $id = 20;
protected $rawName = '초선화';
protected $name = '초선화(사기)'; protected $name = '초선화(사기)';
protected $info = '[전투] 사기 보정 +14'; protected $info = '[전투] 사기 보정 +14';
protected $cost = 200; protected $cost = 200;
@@ -6,6 +6,7 @@ use \sammo\General;
class che_사기_춘화첩 extends \sammo\BaseItem{ class che_사기_춘화첩 extends \sammo\BaseItem{
protected $id = 19; protected $id = 19;
protected $rawName = '춘화첩';
protected $name = '춘화첩(사기)'; protected $name = '춘화첩(사기)';
protected $info = '[전투] 사기 보정 +14'; protected $info = '[전투] 사기 보정 +14';
protected $cost = 200; protected $cost = 200;
@@ -3,10 +3,14 @@ namespace sammo\ActionItem;
use \sammo\iAction; use \sammo\iAction;
use \sammo\General; use \sammo\General;
use \sammo\BaseWarUnitTrigger; use \sammo\BaseWarUnitTrigger;
use \sammo\WarUnit;
use \sammo\WarUnitTriggerCaller;
use \sammo\WarUnitTrigger\능력치변경;
class che_사기_탁주 extends \sammo\BaseItem{ class che_사기_탁주 extends \sammo\BaseItem{
protected $id = 3; protected $id = 3;
protected $rawName = '탁주';
protected $name = '탁주(사기)'; protected $name = '탁주(사기)';
protected $info = '[전투] 사기 +6. 1회용'; protected $info = '[전투] 사기 +6. 1회용';
protected $cost = 1000; protected $cost = 1000;
@@ -12,6 +12,7 @@ use sammo\WarUnitTriggerCaller;
class che_의술_청낭서 extends \sammo\BaseItem{ class che_의술_청낭서 extends \sammo\BaseItem{
protected $id = 23; protected $id = 23;
protected $rawName = '청낭서';
protected $name = '청낭서(의술)'; protected $name = '청낭서(의술)';
protected $info = '[군사] 매 턴마다 자신(100%)과 소속 도시 장수(적 포함 50%) 부상 회복<br>[전투] 페이즈마다 20% 확률로 치료 발동(아군 피해 1/3 감소)'; protected $info = '[군사] 매 턴마다 자신(100%)과 소속 도시 장수(적 포함 50%) 부상 회복<br>[전투] 페이즈마다 20% 확률로 치료 발동(아군 피해 1/3 감소)';
protected $cost = 200; protected $cost = 200;
@@ -12,6 +12,7 @@ use sammo\WarUnitTrigger\che_전투치료시도;
class che_의술_태평청령 extends \sammo\BaseItem{ class che_의술_태평청령 extends \sammo\BaseItem{
protected $id = 24; protected $id = 24;
protected $rawName = '태평청령';
protected $name = '태평청령(의술)'; protected $name = '태평청령(의술)';
protected $info = '[군사] 매 턴마다 자신(100%)과 소속 도시 장수(적 포함 50%) 부상 회복<br>[전투] 페이즈마다 20% 확률로 치료 발동(아군 피해 1/3 감소)'; protected $info = '[군사] 매 턴마다 자신(100%)과 소속 도시 장수(적 포함 50%) 부상 회복<br>[전투] 페이즈마다 20% 확률로 치료 발동(아군 피해 1/3 감소)';
protected $cost = 200; protected $cost = 200;
@@ -11,6 +11,7 @@ use \sammo\BaseWarUnitTrigger;
class che_저격_수극 extends \sammo\BaseItem{ class che_저격_수극 extends \sammo\BaseItem{
protected $id = 2; protected $id = 2;
protected $rawName = '수극';
protected $name = '수극(저격)'; protected $name = '수극(저격)';
protected $info = '[전투] 전투 개시 전 20% 확률로 저격 시도. 1회용'; protected $info = '[전투] 전투 개시 전 20% 확률로 저격 시도. 1회용';
protected $cost = 1000; protected $cost = 1000;
@@ -8,6 +8,7 @@ use \sammo\GeneralTriggerCaller;
class che_치료_도소연명 extends \sammo\BaseItem{ class che_치료_도소연명 extends \sammo\BaseItem{
protected $id = 9; protected $id = 9;
protected $rawName = '도소연명';
protected $name = '도소연명(치료)'; protected $name = '도소연명(치료)';
protected $info = '[군사] 턴 실행 전 부상 회복.'; protected $info = '[군사] 턴 실행 전 부상 회복.';
protected $cost = 200; protected $cost = 200;
@@ -8,6 +8,7 @@ use \sammo\GeneralTriggerCaller;
class che_치료_무후행군 extends \sammo\BaseItem{ class che_치료_무후행군 extends \sammo\BaseItem{
protected $id = 8; protected $id = 8;
protected $rawName = '무후행군';
protected $name = '무후행군(치료)'; protected $name = '무후행군(치료)';
protected $info = '[군사] 턴 실행 전 부상 회복.'; protected $info = '[군사] 턴 실행 전 부상 회복.';
protected $cost = 200; protected $cost = 200;
@@ -8,6 +8,7 @@ use \sammo\GeneralTriggerCaller;
class che_치료_오석산 extends \sammo\BaseItem{ class che_치료_오석산 extends \sammo\BaseItem{
protected $id = 7; protected $id = 7;
protected $rawName = '오석산';
protected $name = '오석산(치료)'; protected $name = '오석산(치료)';
protected $info = '[군사] 턴 실행 전 부상 회복.'; protected $info = '[군사] 턴 실행 전 부상 회복.';
protected $cost = 200; protected $cost = 200;
@@ -8,6 +8,7 @@ use \sammo\GeneralTriggerCaller;
class che_치료_정력견혈 extends \sammo\BaseItem{ class che_치료_정력견혈 extends \sammo\BaseItem{
protected $id = 11; protected $id = 11;
protected $rawName = '정력견혈';
protected $name = '정력견혈(치료)'; protected $name = '정력견혈(치료)';
protected $info = '[군사] 턴 실행 전 부상 회복.'; protected $info = '[군사] 턴 실행 전 부상 회복.';
protected $cost = 200; protected $cost = 200;
@@ -8,6 +8,7 @@ use \sammo\GeneralTriggerCaller;
class che_치료_칠엽청점 extends \sammo\BaseItem{ class che_치료_칠엽청점 extends \sammo\BaseItem{
protected $id = 10; protected $id = 10;
protected $rawName = '칠엽청점';
protected $name = '칠엽청점(치료)'; protected $name = '칠엽청점(치료)';
protected $info = '[군사] 턴 실행 전 부상 회복.'; protected $info = '[군사] 턴 실행 전 부상 회복.';
protected $cost = 200; protected $cost = 200;
@@ -8,6 +8,7 @@ use \sammo\GeneralTriggerCaller;
class che_치료_환약 extends \sammo\BaseItem{ class che_치료_환약 extends \sammo\BaseItem{
protected $id = 1; protected $id = 1;
protected $rawName = '환약';
protected $name = '환약(치료)'; protected $name = '환약(치료)';
protected $info = '[군사] 턴 실행 전 부상 회복. 1회용'; protected $info = '[군사] 턴 실행 전 부상 회복. 1회용';
protected $cost = 100; protected $cost = 100;
@@ -6,6 +6,7 @@ use \sammo\General;
class che_회피_둔갑천서 extends \sammo\BaseItem{ class che_회피_둔갑천서 extends \sammo\BaseItem{
protected $id = 26; protected $id = 26;
protected $rawName = '둔갑천서';
protected $name = '둔갑천서(회피)'; protected $name = '둔갑천서(회피)';
protected $info = '[전투] 회피 확률 +20%p'; protected $info = '[전투] 회피 확률 +20%p';
protected $cost = 200; protected $cost = 200;
@@ -6,7 +6,8 @@ use \sammo\General;
class che_회피_태평요술 extends \sammo\BaseItem{ class che_회피_태평요술 extends \sammo\BaseItem{
protected $id = 25; protected $id = 25;
protected $name = '둔갑천서(회피)'; protected $rawName = '태평요술';
protected $name = '태평요술(회피)';
protected $info = '[전투] 회피 확률 +20%p'; protected $info = '[전투] 회피 확률 +20%p';
protected $cost = 200; protected $cost = 200;
protected $consumable = false; protected $consumable = false;
@@ -6,6 +6,7 @@ use \sammo\General;
class che_훈련_과실주 extends \sammo\BaseItem{ class che_훈련_과실주 extends \sammo\BaseItem{
protected $id = 12; protected $id = 12;
protected $rawName = '과실주';
protected $name = '과실주(훈련)'; protected $name = '과실주(훈련)';
protected $info = '[전투] 훈련 보정 +10'; protected $info = '[전투] 훈련 보정 +10';
protected $cost = 200; protected $cost = 200;
@@ -6,6 +6,7 @@ use \sammo\General;
class che_훈련_단결도 extends \sammo\BaseItem{ class che_훈련_단결도 extends \sammo\BaseItem{
protected $id = 18; protected $id = 18;
protected $rawName = '단결도';
protected $name = '단결도(훈련)'; protected $name = '단결도(훈련)';
protected $info = '[전투] 훈련 보정 +14'; protected $info = '[전투] 훈련 보정 +14';
protected $cost = 200; protected $cost = 200;
@@ -6,6 +6,7 @@ use \sammo\General;
class che_훈련_이강주 extends \sammo\BaseItem{ class che_훈련_이강주 extends \sammo\BaseItem{
protected $id = 13; protected $id = 13;
protected $rawName = '이강주';
protected $name = '이강주(훈련)'; protected $name = '이강주(훈련)';
protected $info = '[전투] 훈련 보정 +10'; protected $info = '[전투] 훈련 보정 +10';
protected $cost = 200; protected $cost = 200;
@@ -6,6 +6,7 @@ use \sammo\General;
class che_훈련_철벽서 extends \sammo\BaseItem{ class che_훈련_철벽서 extends \sammo\BaseItem{
protected $id = 17; protected $id = 17;
protected $rawName = '철벽서';
protected $name = '철벽서(훈련)'; protected $name = '철벽서(훈련)';
protected $info = '[전투] 훈련 보정 +14'; protected $info = '[전투] 훈련 보정 +14';
protected $cost = 200; protected $cost = 200;
@@ -3,10 +3,14 @@ namespace sammo\ActionItem;
use \sammo\iAction; use \sammo\iAction;
use \sammo\General; use \sammo\General;
use \sammo\BaseWarUnitTrigger; use \sammo\BaseWarUnitTrigger;
use \sammo\WarUnit;
use \sammo\WarUnitTriggerCaller;
use \sammo\WarUnitTrigger\능력치변경;
class che_훈련_청주 extends \sammo\BaseItem{ class che_훈련_청주 extends \sammo\BaseItem{
protected $id = 4; protected $id = 4;
protected $rawName = '청주';
protected $name = '청주(훈련)'; protected $name = '청주(훈련)';
protected $info = '[전투] 훈련 +6. 1회용'; protected $info = '[전투] 훈련 +6. 1회용';
protected $cost = 1000; protected $cost = 1000;
+5
View File
@@ -8,6 +8,7 @@ class BaseItem implements iAction{
use \sammo\DefaultAction; use \sammo\DefaultAction;
protected $id = 0; protected $id = 0;
protected $rawName = '-';
protected $name = '-'; protected $name = '-';
protected $info = ''; protected $info = '';
protected $cost = null; protected $cost = null;
@@ -18,6 +19,10 @@ class BaseItem implements iAction{
function getID(){ function getID(){
return $this->id; return $this->id;
} }
function getRawName(){
return $this->rawName;
}
function getCost(){ function getCost(){
return $this->cost; return $this->cost;
+2 -1
View File
@@ -77,6 +77,7 @@ abstract class BaseWarUnitTrigger extends ObjectTrigger{
$self->activateSkill('아이템사용'); $self->activateSkill('아이템사용');
$item = $self->getGeneral()->getItem(); $item = $self->getGeneral()->getItem();
$itemName = $item->getName(); $itemName = $item->getName();
$itemRawName = $item->getRawName();
$self->activateSkill($itemName); $self->activateSkill($itemName);
if (!($this->raiseType & static::TYPE_CONSUMABLE_ITEM)) { if (!($this->raiseType & static::TYPE_CONSUMABLE_ITEM)) {
@@ -88,7 +89,7 @@ abstract class BaseWarUnitTrigger extends ObjectTrigger{
} }
$self->activateSkill('아이템소모'); $self->activateSkill('아이템소모');
$josaUl = JosaUtil::pick($itemName, '을'); $josaUl = JosaUtil::pick($itemRawName, '을');
$self->getLogger()->pushGeneralActionLog("<C>{$itemName}</>{$josaUl} 사용!", ActionLogger::PLAIN); $self->getLogger()->pushGeneralActionLog("<C>{$itemName}</>{$josaUl} 사용!", ActionLogger::PLAIN);
$self->general->deleteItem(); $self->general->deleteItem();
@@ -25,13 +25,6 @@ class che_군량매매 extends Command\GeneralCommand{
static protected $actionName = '군량매매'; static protected $actionName = '군량매매';
static public $reqArg = true; static public $reqArg = true;
static $itemMap = [
'horse'=>'명마',
'weapon'=>'무기',
'book'=>'서적',
'item'=>'도구',
];
protected function argTest():bool{ protected function argTest():bool{
if($this->arg === null){ if($this->arg === null){
return false; return false;
+30 -7
View File
@@ -15,7 +15,6 @@ use \sammo\{
use function \sammo\{ use function \sammo\{
tryUniqueItemLottery, tryUniqueItemLottery,
getItemName,
buildItemClass buildItemClass
}; };
@@ -110,6 +109,24 @@ class che_장비매매 extends Command\GeneralCommand{
return 0; return 0;
} }
public function getBrief():string{
$itemType = $this->arg['itemType'];
$itemCode = $this->arg['itemCode'];
if($itemCode === 'None'){
$itemTypeName = static::$itemMap[$itemType];
$josaUl = JosaUtil::pick($itemTypeName, '을');
return "{$itemTypeName}{$josaUl} 판매";
}
$itemObj = buildItemClass($itemCode);
$itemName = $itemObj->getName();
$itemRawName = $itemObj->getRawName();
$josaUl = JosaUtil::pick($itemRawName, '을');
return "{$itemName}{$josaUl} 구입";
}
public function run():bool{ public function run():bool{
if(!$this->isRunnable()){ if(!$this->isRunnable()){
throw new \RuntimeException('불가능한 커맨드를 강제로 실행 시도'); throw new \RuntimeException('불가능한 커맨드를 강제로 실행 시도');
@@ -133,8 +150,9 @@ class che_장비매매 extends Command\GeneralCommand{
$itemObj = buildItemClass($itemCode); $itemObj = buildItemClass($itemCode);
$cost = $itemObj->getCost(); $cost = $itemObj->getCost();
$itemName = $itemObj->getName(); $itemName = $itemObj->getName();
$itemRawName = $itemObj->getRawName();
$josaUl = JosaUtil::pick($itemName, '을'); $josaUl = JosaUtil::pick($itemRawName, '을');
$logger = $general->getLogger(); $logger = $general->getLogger();
@@ -173,8 +191,14 @@ class che_장비매매 extends Command\GeneralCommand{
?> ?>
<script> <script>
function updateItemType(){ function updateItemType(){
$('#itemType').val($('#itemCode option:selected').data('itemType')); $('#itemType').val($('#itemCode option:selected').data('item_type'));
} }
$(function(){
$('#customSubmit').click(function(){
updateItemType();
submitAction();
});
});
</script> </script>
<input type="hidden" class="formInput" name="itemType" id="itemType" value="item"> <input type="hidden" class="formInput" name="itemType" id="itemType" value="item">
장비를 구입하거나 매각합니다.<br> 장비를 구입하거나 매각합니다.<br>
@@ -186,7 +210,6 @@ function updateItemType(){
$typeName = static::$itemMap[$itemType]; $typeName = static::$itemMap[$itemType];
?> ?>
<option value='None' data-itemType='<?=$itemType?>' style='color:skyblue'>_____<?=$typeName?>매각(반값)____</option> <option value='None' data-itemType='<?=$itemType?>' style='color:skyblue'>_____<?=$typeName?>매각(반값)____</option>
//구입
<?php foreach($itemCategories as $itemCode=>$cnt) : <?php foreach($itemCategories as $itemCode=>$cnt) :
if($cnt > 0){ if($cnt > 0){
continue; continue;
@@ -199,15 +222,15 @@ function updateItemType(){
$reqSecu = $itemClass->getReqSecu(); $reqSecu = $itemClass->getReqSecu();
$reqGold = $itemClass->getCost(); $reqGold = $itemClass->getCost();
$css = ''; $css = '';
if($reqSecu < $citySecu){ if($reqSecu > $citySecu){
$css = 'color:red;'; $css = 'color:red;';
} }
?> ?>
<option value='<?=$itemCode?>' data-itemType='<?=$itemType?>' style='<?=$css?>'><?=$itemName?> 가격: <?=$reqGold?></option> <option value='<?=$itemCode?>' data-item_type='<?=$itemType?>' style='<?=$css?>'><?=$itemName?> 가격: <?=$reqGold?></option>
<?php endforeach; ?> <?php endforeach; ?>
<?php endforeach; ?> <?php endforeach; ?>
</select> </select>
<input type=submit value=거래> <input type=button id="customSubmit" value="<?=$this->getName()?>"><br>
<?php <?php
return ob_get_clean(); return ob_get_clean();
} }
+3 -2
View File
@@ -286,8 +286,9 @@ class che_화계 extends Command\GeneralCommand{
$itemObj = $general->getItem(); $itemObj = $general->getItem();
if($itemObj->isConsumableNow('GeneralCommand', '계략') && $itemObj::$consumable){ if($itemObj->isConsumableNow('GeneralCommand', '계략') && $itemObj::$consumable){
$itemName = $itemObj->name; $itemName = $itemObj->getName();
$josaUl = JosaUtil::pick($itemName, '을'); $itemRawName = $itemObj->getRawName();
$josaUl = JosaUtil::pick($itemRawName, '을');
$logger->pushGeneralActionLog("<C>{$itemName}</>{$josaUl} 사용!", ActionLogger::PLAIN); $logger->pushGeneralActionLog("<C>{$itemName}</>{$josaUl} 사용!", ActionLogger::PLAIN);
$general->deleteItem(); $general->deleteItem();
} }
@@ -20,7 +20,8 @@ class che_아이템치료 extends BaseGeneralTrigger{
$general->activateSkill('pre.부상경감', 'pre.치료'); $general->activateSkill('pre.부상경감', 'pre.치료');
$itemObj = $general->getItem(); $itemObj = $general->getItem();
$itemName = $itemObj->getName(); $itemName = $itemObj->getName();
$josaUl = JosaUtil::pick($itemName, '을'); $itemRawName = $itemObj->getRawName();
$josaUl = JosaUtil::pick($itemRawName, '을');
$general->getLogger()->pushGeneralActionLog("<C>{$itemName}</>{$josaUl} 사용하여 치료합니다!", ActionLogger::PLAIN); $general->getLogger()->pushGeneralActionLog("<C>{$itemName}</>{$josaUl} 사용하여 치료합니다!", ActionLogger::PLAIN);
if($itemObj->isConsumableNow('GeneralTrigger', 'che_아이템치료')){ if($itemObj->isConsumableNow('GeneralTrigger', 'che_아이템치료')){