아이템 int->string 반영

This commit is contained in:
2019-06-10 02:20:48 +09:00
parent bb7e93ac2d
commit d4b7cdc97c
6 changed files with 120 additions and 135 deletions
+12
View File
@@ -77,6 +77,18 @@ echo "
<td width=100 align=center>아이템 지급</td>
<td width=504>
<select name=weap size=1 style='color:white;background-color:black;font-size:13px'>";
foreach(GameConst::$allItems as $itemCategories){
foreach($itemCategories as $item=>$cnt){
if($cnt == 0){
continue;
}
$itemObj = buildItemClass($item);
if($itemObj->isBuyable()){
continue;
}
}
}
for($i=0; $i < 27; $i++) {
echo "
<option value={$i}>{$i}</option>";
+25 -25
View File
@@ -5,7 +5,7 @@ include "lib.php";
include "func.php";
$btn = Util::getReq('btn');
$weap = Util::getReq('weap', 'int');
$item = Util::getReq('item', 'string');
$genlist = Util::getReq('genlist', 'array_int');
$msg = Util::getReq('msg', 'string');
@@ -216,11 +216,11 @@ switch($btn) {
break;
case "무기지급":
if($weap == 0) {
if($item == 0) {
$text = "무기 회수!";
}
else {
$text = getItemName($weap)." 지급!";
$text = getItemName($item)." 지급!";
}
foreach($genlist as $generalID){
@@ -228,23 +228,23 @@ switch($btn) {
$msg->send(true);
}
if($weap == 0){
if($item === 'None'){
$db->update('general', [
'weap'=>0
'weap'=>'None'
], '`no` IN %li', $genlist);
}
else{
$db->update('general', [
'weap'=>$weap
], '`no` IN %li AND weap < %i', $genlist, $weap);
'weap'=>$item
], '`no` IN %li', $genlist, $item);
}
break;
case "책지급":
if($weap == 0) {
if($item == 0) {
$text = "책 회수!";
}
else {
$text = getItemName($weap)." 지급!";
$text = getItemName($item)." 지급!";
}
foreach($genlist as $generalID){
@@ -252,23 +252,23 @@ switch($btn) {
$msg->send(true);
}
if($weap == 0){
if($item == 0){
$db->update('general', [
'book'=>0
'book'=>'None'
], '`no` IN %li', $genlist);
}
else{
$db->update('general', [
'book'=>$weap
], '`no` IN %li AND book < %i', $genlist, $weap);
'book'=>$item
], '`no` IN %li', $genlist);
}
break;
case "말지급":
if($weap == 0) {
if($item == 0) {
$text = "말 회수!";
}
else {
$text = getItemName($weap)." 지급!";
$text = getItemName($item)." 지급!";
}
foreach($genlist as $generalID){
@@ -276,23 +276,23 @@ switch($btn) {
$msg->send(true);
}
if($weap == 0){
if($item == 0){
$db->update('general', [
'horse'=>0
'horse'=>'None'
], '`no` IN %li', $genlist);
}
else{
$db->update('general', [
'horse'=>$weap
], '`no` IN %li AND horse < %i', $genlist, $weap);
'horse'=>$item
], '`no` IN %li', $genlist);
}
break;
case "도구지급":
if($weap == 0) {
if($item == 0) {
$text = "특수도구 회수!";
}
else {
$text = getItemName($weap)." 지급!";
$text = getItemName($item)." 지급!";
}
foreach($genlist as $generalID){
@@ -300,15 +300,15 @@ switch($btn) {
$msg->send(true);
}
if($weap == 0){
if($item == 0){
$db->update('general', [
'item'=>0
'item'=>'None'
], '`no` IN %li', $genlist);
}
else{
$db->update('general', [
'item'=>$weap
], '`no` IN %li AND item < %i', $genlist, $weap);
'item'=>$item
], '`no` IN %li AND item < %i', $genlist, $item);
}
break;
case "하야입력":
+6 -3
View File
@@ -169,7 +169,7 @@ function getPersonalityClass(?string $type){
function getItemClass(?string $itemClass){
if($itemClass === null){
return null;
$itemClass = 'None';
}
static $basePath = __NAMESPACE__.'\\ActionItem\\';
@@ -180,11 +180,14 @@ function getItemClass(?string $itemClass){
return $classPath;
}
throw new \InvalidArgumentException("{$itemClass}는 올바른 성격 클래스가 아님");
throw new \InvalidArgumentException("{$itemClass}는 올바른 아이템 클래스가 아님");
}
function buildItemClass(?string $itemClass):BaseItem{
$class = getGeneralCommandClass($itemClass);
if($itemClass === null){
$itemClass = 'None';
}
$class = getItemClass($itemClass);
return new $class();
}
+60 -104
View File
@@ -312,10 +312,7 @@ function fillLowGenAll() {
'leader'=>10,
'power'=>10,
'intel'=>10,
'explevel'=>10,
'horse'=>0,
'weap'=>0,
'book'=>0
'explevel'=>10
];
for($i=0;$i<8;$i++){
@@ -853,108 +850,67 @@ function fight($tnmt_type, $tnmt, $phs, $group, $g1, $g2, $type) {
$e1 = $energy1 = Util::round($gen1[$tp] * getLog($gen1['lvl'], $gen2['lvl']) * 10);
$e2 = $energy2 = Util::round($gen2[$tp] * getLog($gen1['lvl'], $gen2['lvl']) * 10);
//아이템 로그
if($gen1['h'] > 6 && ($tnmt_type == 0 || $tnmt_type == 1)) {
switch(rand()%4) {
case 0:
$josaYi = JosaUtil::pick(getItemName($gen1['h']), '이');
$log[] = "<S>●</> <Y>{$gen1['name']}</>의 <S>".getItemName($gen1['h'])."</>{$josaYi} 포효합니다!"; break;
case 1:
$josaYi = JosaUtil::pick(getItemName($gen1['h']), '이');
$log[] = "<S>●</> <Y>{$gen1['name']}</>의 <S>".getItemName($gen1['h'])."</>{$josaYi} 그 위용을 뽐냅니다!"; break;
case 2:
$josaYi = JosaUtil::pick($gen1['name'], '이');
$josaUl = JosaUtil::pick(getItemName($gen1['h']), '을');
$log[] = "<S>●</> <Y>{$gen1['name']}</>{$josaYi} <S>".getItemName($gen1['h'])."</>{$josaUl} 타고 있습니다!"; break;
case 3:
$josaYi = JosaUtil::pick(getItemName($gen1['h']), '이');
$log[] = "<S>●</> <Y>{$gen1['name']}</>의 <S>".getItemName($gen1['h'])."</>{$josaYi} 갈기를 휘날립니다!"; break;
foreach([$gen1, $gen2] as $gen){
$horse = buildItemClass($gen['h']);
$weap = buildItemCalss($gen['w']);
$book = buildItemCalss($gen['b']);
//아이템 로그
if(!$horse->isBuyable() && ($tnmt_type == 0 || $tnmt_type == 1)) {
$itemName = $horse->getName();
switch(rand()%4) {
case 0:
$josaYi = JosaUtil::pick($itemName, '');
$log[] = "<S>●</> <Y>{$gen['name']}</>의 <S>{$itemName}</>{$josaYi} 포효합니다!"; break;
case 1:
$josaYi = JosaUtil::pick($itemName, '');
$log[] = "<S>●</> <Y>{$gen['name']}</>의 <S>{$itemName}</>{$josaYi} 그 위용을 뽐냅니다!"; break;
case 2:
$josaYi = JosaUtil::pick($gen['name'], '이');
$josaUl = JosaUtil::pick($itemName, '을');
$log[] = "<S>●</> <Y>{$gen['name']}</>{$josaYi} <S>{$itemName}</>{$josaUl} 타고 있습니다!"; break;
case 3:
$josaYi = JosaUtil::pick($itemName, '이');
$log[] = "<S>●</> <Y>{$gen['name']}</>의 <S>{$itemName}</>{$josaYi} 갈기를 휘날립니다!"; break;
}
}
}
if($gen1['w'] > 6 && ($tnmt_type == 0 || $tnmt_type == 2)) {
switch(rand()%4) {
case 0:
$josaYi = JosaUtil::pick(getItemName($gen1['w']), '이');
$log[] = "<S>●</> <Y>{$gen1['name']}</>의 <S>".getItemName($gen1['w'])."</>{$josaYi} 번뜩입니다!"; break;
case 1:
$josaYi = JosaUtil::pick(getItemName($gen1['w']), '이');
$log[] = "<S>●</> <Y>{$gen1['name']}</>의 <S>".getItemName($gen1['w'])."</>{$josaYi} 푸르게 빛납니다!"; break;
case 2:
$log[] = "<S>●</> <Y>{$gen1['name']}</>의 <S>".getItemName($gen1['w'])."</>에서 살기가 느껴집니다!"; break;
case 3:
$josaYi = JosaUtil::pick(getItemName($gen1['w']), '이');
$log[] = "<S>●</> <Y>{$gen1['name']}</>의 손에는 <S>".getItemName($gen1['w'])."</>{$josaYi} 쥐어져 있습니다!"; break;
if(!$weap->isBuyable() && ($tnmt_type == 0 || $tnmt_type == 2)) {
$itemName = $weap->getName();
switch(rand()%4) {
case 0:
$josaYi = JosaUtil::pick($itemName, '이');
$log[] = "<S>●</> <Y>{$gen['name']}</>의 <S>{$itemName}</>{$josaYi} 번뜩입니다!"; break;
case 1:
$josaYi = JosaUtil::pick($itemName, '이');
$log[] = "<S>●</> <Y>{$gen['name']}</>의 <S>{$itemName}</>{$josaYi} 푸르게 빛납니다!"; break;
case 2:
$log[] = "<S>●</> <Y>{$gen['name']}</>의 <S>{$itemName}</>에서 살기가 느껴집니다!"; break;
case 3:
$josaYi = JosaUtil::pick($itemName, '이');
$log[] = "<S>●</> <Y>{$gen['name']}</>의 손에는 <S>{$itemName}</>{$josaYi} 쥐어져 있습니다!"; break;
}
}
}
if($gen1['b'] > 6 && ($tnmt_type == 0 || $tnmt_type == 3)) {
switch(rand()%4) {
case 0:
$josaYi = JosaUtil::pick($gen1['name'], '이');
$josaUl = JosaUtil::pick(getItemName($gen1['b']), '을');
$log[] = "<S>●</> <Y>{$gen1['name']}</>{$josaYi} <S>".getItemName($gen1['b'])."</>{$josaUl} 펼쳐듭니다!"; break;
case 1:
$josaYi = JosaUtil::pick($gen1['name'], '이');
$josaUl = JosaUtil::pick(getItemName($gen1['b']), '을');
$log[] = "<S>●</> <Y>{$gen1['name']}</>{$josaYi} <S>".getItemName($gen1['b'])."</>{$josaUl} 품에서 꺼냅니다!"; break;
case 2:
$josaYi = JosaUtil::pick($gen1['name'], '이');
$josaUl = JosaUtil::pick(getItemName($gen1['b']), '을');
$log[] = "<S>●</> <Y>{$gen1['name']}</>{$josaYi} <S>".getItemName($gen1['b'])."</>{$josaUl} 들고 있습니다!"; break;
case 3:
$josaYi = JosaUtil::pick(getItemName($gen1['b']), '이');
$log[] = "<S>●</> <Y>{$gen1['name']}</>의 손에는 <S>".getItemName($gen1['b'])."</>{$josaYi} 쥐어져 있습니다!"; break;
}
}
if($gen2['h'] > 6 && ($tnmt_type == 0 || $tnmt_type == 1)) {
$josaUl = JosaUtil::pick($gen2['h'], '을');
switch(rand()%4) {
case 0:
$josaYi = JosaUtil::pick(getItemName($gen2['h']), '이');
$log[] = "<S>●</> <Y>{$gen2['name']}</>의 <S>".getItemName($gen2['h'])."</>{$josaYi} 포효합니다!"; break;
case 1:
$josaYi = JosaUtil::pick(getItemName($gen2['h']), '이');
$log[] = "<S>●</> <Y>{$gen2['name']}</>의 <S>".getItemName($gen2['h'])."</>{$josaYi} 그 위용을 뽐냅니다!"; break;
case 2:
$josaYi = JosaUtil::pick($gen2['name'], '이');
$josaUl = JosaUtil::pick(getItemName($gen2['h']), '을');
$log[] = "<S>●</> <Y>{$gen2['name']}</>{$josaYi} <S>".getItemName($gen2['h'])."</>{$josaUl} 타고 있습니다!"; break;
case 3:
$josaYi = JosaUtil::pick(getItemName($gen2['h']), '이');
$log[] = "<S>●</> <Y>{$gen2['name']}</>의 <S>".getItemName($gen2['h'])."</>{$josaYi} 갈기를 휘날립니다!"; break;
}
}
if($gen2['w'] > 6 && ($tnmt_type == 0 || $tnmt_type == 2)) {
switch(rand()%4) {
case 0:
$josaYi = JosaUtil::pick(getItemName($gen2['w']), '이');
$log[] = "<S>●</> <Y>{$gen2['name']}</>의 <S>".getItemName($gen2['w'])."</>{$josaYi} 번뜩입니다!"; break;
case 1:
$josaYi = JosaUtil::pick(getItemName($gen2['w']), '이');
$log[] = "<S>●</> <Y>{$gen2['name']}</>의 <S>".getItemName($gen2['w'])."</>{$josaYi} 푸르게 빛납니다!"; break;
case 2:
$log[] = "<S>●</> <Y>{$gen2['name']}</>의 <S>".getItemName($gen2['w'])."</>에서 살기가 느껴집니다!"; break;
case 3:
$josaYi = JosaUtil::pick(getItemName($gen2['w']), '이');
$log[] = "<S>●</> <Y>{$gen2['name']}</>의 손에는 <S>".getItemName($gen2['w'])."</>{$josaYi} 쥐어져 있습니다!"; break;
}
}
if($gen2['b'] > 6 && ($tnmt_type == 0 || $tnmt_type == 3)) {
switch(rand()%4) {
case 0:
$josaYi = JosaUtil::pick($gen2['name'], '이');
$josaUl = JosaUtil::pick(getItemName($gen2['b']), '을');
$log[] = "<S>●</> <Y>{$gen2['name']}</>{$josaYi} <S>".getItemName($gen2['b'])."</>{$josaUl} 펼쳐듭니다!"; break;
case 1:
$josaYi = JosaUtil::pick($gen2['name'], '이');
$josaUl = JosaUtil::pick(getItemName($gen2['b']), '을');
$log[] = "<S>●</> <Y>{$gen2['name']}</>{$josaYi} <S>".getItemName($gen2['b'])."</>{$josaUl} 품에서 꺼냅니다!"; break;
case 2:
$josaYi = JosaUtil::pick($gen2['name'], '이');
$josaUl = JosaUtil::pick(getItemName($gen2['b']), '을');
$log[] = "<S>●</> <Y>{$gen2['name']}</>{$josaYi} <S>".getItemName($gen2['b'])."</>{$josaUl} 들고 있습니다!"; break;
case 3:
$josaYi = JosaUtil::pick(getItemName($gen2['b']), '이');
$log[] = "<S>●</> <Y>{$gen2['name']}</>의 손에는 <S>".getItemName($gen2['b'])."</>{$josaYi} 쥐어져 있습니다!"; break;
if(!$book->isBuyable() && ($tnmt_type == 0 || $tnmt_type == 3)) {
$itemName = $book->getName();
switch(rand()%4) {
case 0:
$josaYi = JosaUtil::pick($gen['name'], '이');
$josaUl = JosaUtil::pick(getItemName($gen['b']), '을');
$log[] = "<S>●</> <Y>{$gen['name']}</>{$josaYi} <S>".getItemName($gen['b'])."</>{$josaUl} 펼쳐듭니다!"; break;
case 1:
$josaYi = JosaUtil::pick($gen['name'], '이');
$josaUl = JosaUtil::pick(getItemName($gen['b']), '을');
$log[] = "<S>●</> <Y>{$gen['name']}</>{$josaYi} <S>".getItemName($gen['b'])."</>{$josaUl} 품에서 꺼냅니다!"; break;
case 2:
$josaYi = JosaUtil::pick($gen['name'], '이');
$josaUl = JosaUtil::pick(getItemName($gen['b']), '을');
$log[] = "<S>●</> <Y>{$gen['name']}</>{$josaYi} <S>".getItemName($gen['b'])."</>{$josaUl} 들고 있습니다!"; break;
case 3:
$josaYi = JosaUtil::pick(getItemName($gen['b']), '이');
$log[] = "<S>●</> <Y>{$gen['name']}</>의 손에는 <S>".getItemName($gen['b'])."</>{$josaYi} 쥐어져 있습니다!"; break;
}
}
}
+14
View File
@@ -0,0 +1,14 @@
<?php
namespace sammo\ActionItem;
use \sammo\iAction;
use \sammo\General;
class None extends \sammo\BaseItem{
protected static $id = 0;
protected static $name = '-';
protected static $info = null;
protected static $cost = 0;
protected static $consumable = false;
protected static $buyable = true;
}
+3 -3
View File
@@ -481,9 +481,9 @@ create table tournament (
no int(6) default 0,
npc int(6) default 0,
name char(64) default '',
w int(2) default 0,
b int(2) default 0,
h int(2) default 0,
w varchar(20) default 'None',
b varchar(20) default 'None',
h varchar(20)) default 'None',
ldr int(3) default 0,
pwr int(3) default 0,
itl int(3) default 0,