Commit 3658379b authored by Nemo Ma's avatar Nemo Ma Committed by GitHub

Merge pull request #12 from hikawiier/waaagh

Add sponsor(?) & findneut
parents ebd4f717 40091124
This diff is collapsed.
...@@ -102,6 +102,20 @@ if((strpos($action,'corpse')===0 || strpos($action,'pacorpse')===0) && $gamestat ...@@ -102,6 +102,20 @@ if((strpos($action,'corpse')===0 || strpos($action,'pacorpse')===0) && $gamestat
} }
} }
} }
elseif((strpos($action,'neut')===0)){
$nid = str_replace('neut','',$action);
if($nid){
$result = $db->query("SELECT * FROM {$tablepre}players WHERE pid='$nid' AND hp>0");
if($db->num_rows($result)>0){
$edata = $db->fetch_array($result);
include_once GAME_ROOT.'./include/game/revcombat.func.php';
findneut($edata,1);
extract($edata,EXTR_PREFIX_ALL,'w');
init_battle(1);
$main = 'battle';
}
}
}
if($hp > 0 && $coldtimeon && $showcoldtimer && $rmcdtime){$log .= "行动冷却时间:<span id=\"timer\" class=\"yellow\">0.0</span>秒<script type=\"text/javascript\">demiSecTimerStarter($rmcdtime);</script><br>";} if($hp > 0 && $coldtimeon && $showcoldtimer && $rmcdtime){$log .= "行动冷却时间:<span id=\"timer\" class=\"yellow\">0.0</span>秒<script type=\"text/javascript\">demiSecTimerStarter($rmcdtime);</script><br>";}
if ($club==0) if ($club==0)
......
...@@ -1684,6 +1684,73 @@ $anpcinfo = array ...@@ -1684,6 +1684,73 @@ $anpcinfo = array
), ),
), ),
90 => array
(
'mode' => 2,
'num' => 1,
'pass' => 'bra',
'club' => 0,
'bid' => 0,
'inf' => '',
'rage' => 0,
'pose'=> 3,
'tactic' => 2,
'killnum' => 0,
'teamID' => '',
'teamPass' => '',
'gd' => 'f',
'pls' => 99,
'mhp' => 520,
'msp' => 200,
'att' => 80,
'def' => 233,
'lvl' => 23,
'skill' => 77,
'money' => 250,
'arb' => '黄色的冲锋衣',
'arbk' => 'DB',
'arbe' => 25,
'arbs' => 50,
'arh' => '黄色的骑行头盔',
'arhk' => 'DH',
'arhe' => 25,
'arhs' => 50,
'ara' => '智能手环',
'arak' => 'DA',
'arae' => 25,
'aras' => 50,
'arf' => '运动鞋',
'arfk' => 'DF',
'arfe' => 25,
'arfs' => 50,
'art' => '快递单',
'artk' => 'A',
'arte' => 1,
'arts' => 1,
'artsk' => 'z',
'itm4' => '锅?',
'itmk4' => 'Y',
'itme4' => 1,
'itms4' => 1,
'itm5' => '压缩饼干',
'itmk5' => 'HB',
'itme5' => 35,
'itms5' => 10,
'sub' => array
(
0 => array
(
'name' => '迷之搬运工',
'icon' => 10,
'wep' => '大喇叭',
'wepk' => 'WP',
'wepe' => 25,
'weps' => 75,
'wepsk' => 'w',
),
),
),
92 => array 92 => array
( (
'mode' => 2, 'mode' => 2,
......
...@@ -48,9 +48,9 @@ $mixinfo = array ...@@ -48,9 +48,9 @@ $mixinfo = array
array('class' => 'wp', 'stuff' => array('☆法式长棍面包☆','水'),'result' => array('法式面包棍棒','WP',120,25,'NRz'),), array('class' => 'wp', 'stuff' => array('☆法式长棍面包☆','水'),'result' => array('法式面包棍棒','WP',120,25,'NRz'),),
array('class' => 'wp', 'stuff' => array('棍棒','岩石','钉','毒药'),'result' => array('绽花毒藤','WKP',180,150,'Np'),), array('class' => 'wp', 'stuff' => array('棍棒','岩石','钉','毒药'),'result' => array('绽花毒藤','WKP',180,150,'Np'),),
array('class' => 'wp', 'stuff' => array('向日葵','月光碎片','铁链','超级重锤'),'result' => array('太极','WP',180,150,'Nwc'),), array('class' => 'wp', 'stuff' => array('向日葵','月光碎片','铁链','超级重锤'),'result' => array('太极','WP',180,150,'Nwc'),),
array('class' => 'wp', 'stuff' => array('红宝石方块','★制御棒★','延展御柱','夜雀歌谱'),'result' => array('晨星链刃','WKP',827,260,'rdfc'),), array('class' => 'wp', 'stuff' => array('红宝石方块','★制御棒★','『延展御柱』','夜雀歌谱'),'result' => array('晨星链刃','WKP',827,260,'rdfc'),),
array('class' => 'wp', 'stuff' => array('岩石','火把','★阔剑地雷★'),'result' => array('阳炎之怒','WP',188,30,'du'),), array('class' => 'wp', 'stuff' => array('岩石','火把','★阔剑地雷★'),'result' => array('阳炎之怒','WP',188,30,'du'),),
array('class' => 'wp', 'stuff' => array('阳炎之怒','雏人','『祝福宝石』'),'result' => array('风滚草','WP',156,77,'rcd'),), array('class' => 'wp', 'stuff' => array('阳炎之怒','雏人','『祝福宝石』'),'result' => array('风滚草','WP',156,77,'rcd'),),
array('class' => 'wp', 'stuff' => array('风滚草','晨星链刃','太极','海胆链球'),'result' => array('龙魂破','WKP',6600,2200,'ZrdfN'),), array('class' => 'wp', 'stuff' => array('风滚草','晨星链刃','太极','海胆链球'),'result' => array('龙魂破','WKP',6600,2200,'ZrdfN'),),
array('class' => 'wg', 'stuff' => array('火把','红宝石方块','某种电子零件'),'result' => array('『红石电路』','X',1,1,''),), array('class' => 'wg', 'stuff' => array('火把','红宝石方块','某种电子零件'),'result' => array('『红石电路』','X',1,1,''),),
......
...@@ -86,7 +86,7 @@ $typeinfo = Array( ...@@ -86,7 +86,7 @@ $typeinfo = Array(
89=>'残像回声', 89=>'残像回声',
90=>'各路党派', 90=>'各路党派',
91=>'各路党派', 91=>'各路党派',
92=>'种火' 92=>'种火',
); );
$killmsginfo = Array( $killmsginfo = Array(
0=>'', 0=>'',
...@@ -942,6 +942,7 @@ $iteminfo = Array(//注意顺序,AB必须在A的前面,以此类推 ...@@ -942,6 +942,7 @@ $iteminfo = Array(//注意顺序,AB必须在A的前面,以此类推
//'R' => '探测仪器', //'R' => '探测仪器',
'ss' => '歌词卡片', 'ss' => '歌词卡片',
'T' => '陷阱', 'T' => '陷阱',
'U' => '扫雷设备',
'V'=> '技能书籍', 'V'=> '技能书籍',
'VV'=> '技能书籍', 'VV'=> '技能书籍',
'WN' => '空手',#空手 'WN' => '空手',#空手
......
...@@ -13,6 +13,7 @@ input {cursor: crosshair;} ...@@ -13,6 +13,7 @@ input {cursor: crosshair;}
.subtitle {font-family: "微软雅黑"; margin: 6px;color: #cceafa; width: 100%;font-size: 24px;font-weight:400;} .subtitle {font-family: "微软雅黑"; margin: 6px;color: #cceafa; width: 100%;font-size: 24px;font-weight:400;}
.headerlink{} .headerlink{}
.small {font-size: 9pt} .small {font-size: 9pt}
.center-text {text-align: center;}
.ver a{font:bold 10pt "Viner Hand ITC","隶书" serif;color:#ff0000;} .ver a{font:bold 10pt "Viner Hand ITC","隶书" serif;color:#ff0000;}
.b1 {background-color:rgba(225, 124, 226, 0.6); *BACKGROUND: rgb(98,135,163); *filter:alpha(opacity=60); BORDER: #000 0px none; TEXT-ALIGN: center; COLOR: #fff; border-right: #111 1px solid; border-bottom: #111 1px solid;font:bold 10pt "微软雅黑" serif;} .b1 {background-color:rgba(225, 124, 226, 0.6); *BACKGROUND: rgb(98,135,163); *filter:alpha(opacity=60); BORDER: #000 0px none; TEXT-ALIGN: center; COLOR: #fff; border-right: #111 1px solid; border-bottom: #111 1px solid;font:bold 10pt "微软雅黑" serif;}
.b2 {background-color:rgba(225, 124, 226, 0.6); *BACKGROUND: rgb(98,135,163); *filter:alpha(opacity=80); BORDER: #000 0px none; TEXT-ALIGN: center; COLOR: #fff; border-right: #111 1px solid;font:10pt "微软雅黑" serif;} .b2 {background-color:rgba(225, 124, 226, 0.6); *BACKGROUND: rgb(98,135,163); *filter:alpha(opacity=80); BORDER: #000 0px none; TEXT-ALIGN: center; COLOR: #fff; border-right: #111 1px solid;font:10pt "微软雅黑" serif;}
...@@ -99,6 +100,8 @@ table.admin td.tdtitle { ...@@ -99,6 +100,8 @@ table.admin td.tdtitle {
.evergreen{color:#98fb98;font: bold 10pt "微软雅黑" serif;line-height:16px} .evergreen{color:#98fb98;font: bold 10pt "微软雅黑" serif;line-height:16px}
.evergreen2{color:#98fb98;font:18pt "微软雅黑" serif;} .evergreen2{color:#98fb98;font:18pt "微软雅黑" serif;}
.lightgreen{color:#8AE234;font: bold 10pt "微软雅黑" serif;line-height:16px} .lightgreen{color:#8AE234;font: bold 10pt "微软雅黑" serif;line-height:16px}
.magenta{color:#FF00FF;font: bold 10pt "微软雅黑" serif;line-height:16px}
.sienna{color:#EE7942;font: bold 10pt "微软雅黑" serif;line-height:16px}
.dmg {color:#ff0000;font: bold 10pt "微软雅黑" serif;} .dmg {color:#ff0000;font: bold 10pt "微软雅黑" serif;}
.grey{color:#999; font: bold 10pt "微软雅黑" serif;line-height:16px} .grey{color:#999; font: bold 10pt "微软雅黑" serif;line-height:16px}
.linen{color:rgb(200,192,184); font: bold 10pt "微软雅黑" serif;line-height:16px} .linen{color:rgb(200,192,184); font: bold 10pt "微软雅黑" serif;line-height:16px}
......
...@@ -101,6 +101,6 @@ CREATE TABLE bra_gambling ( ...@@ -101,6 +101,6 @@ CREATE TABLE bra_gambling (
bname char(15) NOT NULL default '', bname char(15) NOT NULL default '',
wager int unsigned NOT NULL default '0', wager int unsigned NOT NULL default '0',
odds decimal(8,4) unsigned NOT NULL default '0', odds decimal(8,4) unsigned NOT NULL default '0',
bnid smallint unsigned NOT NULL default '0',
PRIMARY KEY (gid) PRIMARY KEY (gid)
) ENGINE=MyISAM; ) ENGINE=MyISAM;
\ No newline at end of file
...@@ -118,7 +118,8 @@ if($command == 'kill' || $command == 'live' || $command == 'del') { ...@@ -118,7 +118,8 @@ if($command == 'kill' || $command == 'live' || $command == 'del') {
} }
} }
} elseif($command == 'submitedit') { } elseif($command == 'submitedit') {
$db->query("UPDATE {$tablepre}players SET gd='$gd',icon='$icon',club='$club',sNo='$sNo',hp='$hp',mhp='$mhp',sp='$sp',msp='$msp',att='$att',def='$def',pls='$pls',lvl='$lvl',exp='$exp',money='$money',bid='$bid',inf='$inf',rage='$rage',pose='$pose',tactic='$tactic',killnum='$killnum',wp='$wp',wk='$wk',wg='$wg',wc='$wc',wd='$wd',wf='$wf',teamID='$teamID',teamPass='$teamPass',wep='$wep',wepk='$wepk',wepe='$wepe',weps='$weps',wepsk='$wepsk',arb='$arb',arbk='$arbk',arbe='$arbe',arbs='$arbs',arbsk='$arbsk',arh='$arh',arhk='$arhk',arhe='$arhe',arhs='$arhs',arhsk='$arhsk',ara='$ara',arak='$arak',arae='$arae',aras='$aras',arask='$arask',arf='$arf',arfk='$arfk',arfe='$arfe',arfs='$arfs',arfsk='$arfsk',art='$art',artk='$artk',arte='$arte',arts='$arts',artsk='$artsk',itm0='$itm0',itmk0='$itmk0',itme0='$itme0',itms0='$itms0',itmsk0='$itmsk0',itm1='$itm1',itmk1='$itmk1',itme1='$itme1',itms1='$itms1',itmsk1='$itmsk1',itm2='$itm2',itmk2='$itmk2',itme2='$itme2',itms2='$itms2',itmsk2='$itmsk2',itm3='$itm3',itmk3='$itmk3',itme3='$itme3',itms3='$itms3',itmsk3='$itmsk3',itm4='$itm4',itmk4='$itmk4',itme4='$itme4',itms4='$itms4',itmsk4='$itmsk4',itm5='$itm5',itmk5='$itmk5',itme5='$itme5',itms5='$itms5',itmsk5='$itmsk5',itm6='$itm6',itmk6='$itmk6',itme6='$itme6',itms6='$itms6',itmsk6='$itmsk6' where pid='$pid'"); if(is_array($clbpara)) $clbpara = json_encode($clbpara);
$db->query("UPDATE {$tablepre}players SET gd='$gd',icon='$icon',club='$club',sNo='$sNo',hp='$hp',mhp='$mhp',sp='$sp',msp='$msp',att='$att',def='$def',pls='$pls',lvl='$lvl',exp='$exp',clbstatusa='$clbstatusa',clbstatusb='$clbstatusb',clbstatusc='$clbstatusc',clbstatusd='$clbstatusd',clbstatuse='$clbstatuse',clbpara='$clbpara',money='$money',bid='$bid',inf='$inf',rage='$rage',pose='$pose',tactic='$tactic',killnum='$killnum',wp='$wp',wk='$wk',wg='$wg',wc='$wc',wd='$wd',wf='$wf',teamID='$teamID',teamPass='$teamPass',wep='$wep',wepk='$wepk',wepe='$wepe',weps='$weps',wepsk='$wepsk',arb='$arb',arbk='$arbk',arbe='$arbe',arbs='$arbs',arbsk='$arbsk',arh='$arh',arhk='$arhk',arhe='$arhe',arhs='$arhs',arhsk='$arhsk',ara='$ara',arak='$arak',arae='$arae',aras='$aras',arask='$arask',arf='$arf',arfk='$arfk',arfe='$arfe',arfs='$arfs',arfsk='$arfsk',art='$art',artk='$artk',arte='$arte',arts='$arts',artsk='$artsk',itm0='$itm0',itmk0='$itmk0',itme0='$itme0',itms0='$itms0',itmsk0='$itmsk0',itm1='$itm1',itmk1='$itmk1',itme1='$itme1',itms1='$itms1',itmsk1='$itmsk1',itm2='$itm2',itmk2='$itmk2',itme2='$itme2',itms2='$itms2',itmsk2='$itmsk2',itm3='$itm3',itmk3='$itmk3',itme3='$itme3',itms3='$itms3',itmsk3='$itmsk3',itm4='$itm4',itmk4='$itmk4',itme4='$itme4',itms4='$itms4',itmsk4='$itmsk4',itm5='$itm5',itmk5='$itmk5',itme5='$itme5',itms5='$itms5',itmsk5='$itmsk5',itm6='$itm6',itmk6='$itmk6',itme6='$itme6',itms6='$itms6',itmsk6='$itmsk6' where pid='$pid'");
if(!$db->affected_rows()){ if(!$db->affected_rows()){
$cmd_info = "无法修改角色 $name"; $cmd_info = "无法修改角色 $name";
} else { } else {
......
...@@ -121,7 +121,8 @@ if($command == 'kill' || $command == 'live' || $command == 'del') { ...@@ -121,7 +121,8 @@ if($command == 'kill' || $command == 'live' || $command == 'del') {
} }
} }
} elseif($command == 'submitedit') { } elseif($command == 'submitedit') {
$db->query("UPDATE {$tablepre}players SET gd='$gd',icon='$icon',club='$club',sNo='$sNo',hp='$hp',mhp='$mhp',sp='$sp',msp='$msp',ss='$ss',mss='$mss',att='$att',def='$def',pls='$pls',achievement='$achievement',exp='$exp',money='$money',bid='$bid',inf='$inf',rage='$rage',pose='$pose',tactic='$tactic',killnum='$killnum',wp='$wp',wk='$wk',wg='$wg',wc='$wc',wd='$wd',wf='$wf',teamID='$teamID',achievement='$achievement',wep='$wep',wepk='$wepk',wepe='$wepe',weps='$weps',wepsk='$wepsk',arb='$arb',arbk='$arbk',arbe='$arbe',arbs='$arbs',arbsk='$arbsk',arh='$arh',arhk='$arhk',arhe='$arhe',arhs='$arhs',arhsk='$arhsk',ara='$ara',arak='$arak',arae='$arae',aras='$aras',arask='$arask',arf='$arf',arfk='$arfk',arfe='$arfe',arfs='$arfs',arfsk='$arfsk',art='$art',artk='$artk',arte='$arte',arts='$arts',artsk='$artsk',itm0='$itm0',itmk0='$itmk0',itme0='$itme0',itms0='$itms0',itmsk0='$itmsk0',itm1='$itm1',itmk1='$itmk1',itme1='$itme1',itms1='$itms1',itmsk1='$itmsk1',itm2='$itm2',itmk2='$itmk2',itme2='$itme2',itms2='$itms2',itmsk2='$itmsk2',itm3='$itm3',itmk3='$itmk3',itme3='$itme3',itms3='$itms3',itmsk3='$itmsk3',itm4='$itm4',itmk4='$itmk4',itme4='$itme4',itms4='$itms4',itmsk4='$itmsk4',itm5='$itm5',itmk5='$itmk5',itme5='$itme5',itms5='$itms5',itmsk5='$itmsk5',itm6='$itm6',itmk6='$itmk6',itme6='$itme6',itms6='$itms6',itmsk6='$itmsk6' where pid='$pid'"); if(is_array($clbpara)) $clbpara = json_encode($clbpara);
$db->query("UPDATE {$tablepre}players SET gd='$gd',icon='$icon',club='$club',sNo='$sNo',hp='$hp',mhp='$mhp',sp='$sp',msp='$msp',ss='$ss',mss='$mss',att='$att',def='$def',pls='$pls',achievement='$achievement',exp='$exp',clbstatusa='$clbstatusa',clbstatusb='$clbstatusb',clbstatusc='$clbstatusc',clbstatusd='$clbstatusd',clbstatuse='$clbstatuse',clbpara='$clbpara',money='$money',bid='$bid',inf='$inf',rage='$rage',pose='$pose',tactic='$tactic',killnum='$killnum',wp='$wp',wk='$wk',wg='$wg',wc='$wc',wd='$wd',wf='$wf',teamID='$teamID',achievement='$achievement',wep='$wep',wepk='$wepk',wepe='$wepe',weps='$weps',wepsk='$wepsk',arb='$arb',arbk='$arbk',arbe='$arbe',arbs='$arbs',arbsk='$arbsk',arh='$arh',arhk='$arhk',arhe='$arhe',arhs='$arhs',arhsk='$arhsk',ara='$ara',arak='$arak',arae='$arae',aras='$aras',arask='$arask',arf='$arf',arfk='$arfk',arfe='$arfe',arfs='$arfs',arfsk='$arfsk',art='$art',artk='$artk',arte='$arte',arts='$arts',artsk='$artsk',itm0='$itm0',itmk0='$itmk0',itme0='$itme0',itms0='$itms0',itmsk0='$itmsk0',itm1='$itm1',itmk1='$itmk1',itme1='$itme1',itms1='$itms1',itmsk1='$itmsk1',itm2='$itm2',itmk2='$itmk2',itme2='$itme2',itms2='$itms2',itmsk2='$itmsk2',itm3='$itm3',itmk3='$itmk3',itme3='$itme3',itms3='$itms3',itmsk3='$itmsk3',itm4='$itm4',itmk4='$itmk4',itme4='$itme4',itms4='$itms4',itmsk4='$itmsk4',itm5='$itm5',itmk5='$itmk5',itme5='$itme5',itms5='$itms5',itmsk5='$itmsk5',itm6='$itm6',itmk6='$itmk6',itme6='$itme6',itms6='$itms6',itmsk6='$itmsk6' where pid='$pid'");
if(!$db->affected_rows()){ if(!$db->affected_rows()){
$cmd_info = "无法修改角色 $name"; $cmd_info = "无法修改角色 $name";
} else { } else {
......
...@@ -4,143 +4,6 @@ if(!defined('IN_GAME')) { ...@@ -4,143 +4,6 @@ if(!defined('IN_GAME')) {
exit('Access Denied'); exit('Access Denied');
} }
//格式化储存player表 可能也是四面的遗产
function update_db_player_structure($type=0)
{
global $db,$tablepre,$checkstr;
$db_player_structure = $db_player_structure_types = $tpldata = Array();
$dps_need_update = 0;//判定是否需要更新玩家字段
$dps_file = GAME_ROOT.'./gamedata/bak/db_player_structure.config.php';
$sql_file = GAME_ROOT.'./gamedata/sql/players.sql';
if(!file_exists($dps_file) || filemtime($sql_file) > filemtime($dps_file)){
$dps_need_update = 1;
}
if($dps_need_update){//如果要更新,直接新建一个表,不需要依赖已有的players表
$sql = file_get_contents($sql_file);
$sql = str_replace("\r", "\n", str_replace(' bra_', ' '.$tablepre.'tmp_', $sql));
$db->queries($sql);
$result = $db->query("DESCRIBE {$tablepre}tmp_players");
while ($sttdata = $db->fetch_array($result))
{
global ${$sttdata['Field']};
$db_player_structure[] = $sttdata['Field'];
$db_player_structure_types[$sttdata['Field']] = $sttdata['Type'];
//array_push($db_player_structure,$pdata['Field']);
}
$dps_cont = str_replace('?>','',str_replace('<?','<?php',$checkstr));
$dps_cont .= '$db_player_structure = ' . var_export($db_player_structure,1).";\r\n".'$db_player_structure_types = ' . var_export($db_player_structure_types,1).";\r\n?>";
writeover($dps_file, $dps_cont);
chmod($dps_file,0777);
}else{//若不需要更新,则直接读文件就好
include $dps_file ;
}
return $type ? $db_player_structure_types : $db_player_structure;
}
//返回一个只有数据库合法字段键名的pdata数组
function player_format_with_db_structure($data){
$ndata=Array();
$db_player_structure = update_db_player_structure();
foreach ($db_player_structure as $key){
if (isset($data[$key])) {
$ndata[$key]=$data[$key];
}
}
return $ndata;
}
//将sk转为数组格式 只会转换登记过的属性
function get_itmsk_array($sk_value)
{
global $itemspkinfo;
$ret = Array();
$i = 0;
while ($i < strlen($sk_value))
{
$sub = substr($sk_value,$i,1);
$i++;
if(!empty($sub) && array_key_exists($sub,$itemspkinfo)) array_push($ret,$sub);
}
return $ret;
}
//还原itmsk为字符串 $max_length:字符串长度上限
function get_itmsk_strlen($sk_value,$max_length=5)
{
global $itemspkinfo;
$ret = ''; $sk_count = 0;
foreach($sk_value as $sk)
{
if(array_key_exists($sk,$itemspkinfo))
{
$ret.=$sk;
$sk_count+=strlen($sk);
}
if($sk_count>=$max_length) break;
}
return $ret;
}
//为显示在主界面、尸体发现界面、游戏帮助界面的道具名、道具类、道具属性添加额外描述
//传入$n=道具名/类/属性;$t='m'(使用名称数组)/'k'(类别)/'sk'(属性);$short=1(传入的$n为数组情况下才有效,缩写属性);$class(如果传入的$n没有匹配的样式,则应用该样式)
function parse_itm_desc($n,$t,$short=0,$c=NULL)
{
global $iteminfo,$itemspkinfo;
global $iteminfo_tooltip,$itemkinfo_tooltip,$itemspkinfo_tooltip,$iteminfo_tooltip_desc;
$s = "<span "; $p1 = ''; $p2 = ''; $ret = '';
switch($t)
{
//处理类别
case $t=='k':
if(isset($itemkinfo_tooltip[$n]['title'])) $p1 = "title=\"".$itemkinfo_tooltip[$n]['title']."\"";
if(isset($itemkinfo_tooltip[$n]['class'])) $p2 = "class=\"".$itemkinfo_tooltip[$n]['class']."\"";
$n = $iteminfo[$n];
break;
//处理属性
case $t=='sk':
//如果传入的n为数组,且开启缩写模式,则输出一段缩写
if($short && is_array($n))
{
$p1 = "title=\"";
$sk1 = $itemspkinfo[current($n)]; $sk2 = $itemspkinfo[end($n)]; $skn = '';
foreach($n as $sk_value)
{
if(!empty($skn)) $skn .='+'.$itemspkinfo[$sk_value];
else $skn = $itemspkinfo[$sk_value];
}
$p1.=$skn; $n = $sk1.'+...+'.$sk2; $p2 = "\"";
}
else
{
if(isset($itemspkinfo_tooltip[$n]['title'])) $p1 = "title=\"".$itemspkinfo_tooltip[$n]['title']."\"";
if(isset($itemspkinfo_tooltip[$n]['class'])) $p2 = "class=\"".$itemspkinfo_tooltip[$n]['class']."\"";
$n = $itemspkinfo[$n];
}
break;
//处理名字
case $t=='m':
$filter_n = preg_replace('/锋利的|电气|毒性|钉|\[.*\]|-改/', '', $n);
if(isset($iteminfo_tooltip[$filter_n]))
{
if(is_array($iteminfo_tooltip[$filter_n]))
{
if(isset($iteminfo_tooltip[$filter_n]['title'])) $p1 = "title=\"".$iteminfo_tooltip[$filter_n]['title']."\"";
if(isset($iteminfo_tooltip[$filter_n]['class'])) $p2 = "class=\"".$iteminfo_tooltip[$filter_n]['class']."\"";
}
elseif(isset($iteminfo_tooltip_desc[$iteminfo_tooltip[$filter_n]]))
{ //使用可复用描述 越来越离谱了
if(isset($iteminfo_tooltip_desc[$iteminfo_tooltip[$filter_n]]['title'])) $p1 = "title=\"".$iteminfo_tooltip_desc[$iteminfo_tooltip[$filter_n]]['title']."\"";
if(isset($iteminfo_tooltip_desc[$iteminfo_tooltip[$filter_n]]['class'])) $p2 = "class=\"".$iteminfo_tooltip_desc[$iteminfo_tooltip[$filter_n]]['class']."\"";
}
}
break;
}
//传入了样式 且道具没有与预设匹配的样式 则使用传入的样式
if(isset($c) && !$p2) $p2 = "class=\"".$c."\"";
$p3 = " >"; $e = "</span>";
$ret = $s.$p1.$p2.$p3.$n.$e;
return $ret;
}
function init_playerdata(){ function init_playerdata(){
global $lvl,$baseexp,$exp,$gd,$icon,$arbe,$arhe,$arae,$arfe,$weather,$fog,$weps,$arbs,$log,$upexp,$lvlupexp,$iconImg,$ardef; global $lvl,$baseexp,$exp,$gd,$icon,$arbe,$arhe,$arae,$arfe,$weather,$fog,$weps,$arbs,$log,$upexp,$lvlupexp,$iconImg,$ardef;
...@@ -552,7 +415,19 @@ function w_save2(&$data){ ...@@ -552,7 +415,19 @@ function w_save2(&$data){
//$db->query("UPDATE {$tablepre}players SET name='$w_name',pass='$w_pass',type='$w_type',endtime='$w_endtime',gd='$w_gd',sNo='$w_sNo',icon='$w_icon',club='$w_club',hp='$w_hp',mhp='$w_mhp',sp='$w_sp',msp='$w_msp',att='$w_att',def='$w_def',pls='$w_pls',lvl='$w_lvl',exp='$w_exp',money='$w_money',bid='$w_bid',inf='$w_inf',rage='$w_rage',pose='$w_pose',tactic='$w_tactic',state='$w_state',killnum='$w_killnum',wp='$w_wp',wk='$w_wk',wg='$w_wg',wc='$w_wc',wd='$w_wd',wf='$w_wf',teamID='$w_teamID',teamPass='$w_teamPass',wep='$w_wep',wepk='$w_wepk',wepe='$w_wepe',weps='$w_weps',wepsk='$w_wepsk',arb='$w_arb',arbk='$w_arbk',arbe='$w_arbe',arbs='$w_arbs',arbsk='$w_arbsk',arh='$w_arh',arhk='$w_arhk',arhe='$w_arhe',arhs='$w_arhs',arhsk='$w_arhsk',ara='$w_ara',arak='$w_arak',arae='$w_arae',aras='$w_aras',arask='$w_arask',arf='$w_arf',arfk='$w_arfk',arfe='$w_arfe',arfs='$w_arfs',arfsk='$w_arfsk',art='$w_art',artk='$w_artk',arte='$w_arte',arts='$w_arts',artsk='$w_artsk',itm0='$w_itm0',itmk0='$w_itmk0',itme0='$w_itme0',itms0='$w_itms0',itmsk0='$w_itmsk0',itm1='$w_itm1',itmk1='$w_itmk1',itme1='$w_itme1',itms1='$w_itms1',itmsk1='$w_itmsk1',itm2='$w_itm2',itmk2='$w_itmk2',itme2='$w_itme2',itms2='$w_itms2',itmsk2='$w_itmsk2',itm3='$w_itm3',itmk3='$w_itmk3',itme3='$w_itme3',itms3='$w_itms3',itmsk3='$w_itmsk3',itm4='$w_itm4',itmk4='$w_itmk4',itme4='$w_itme4',itms4='$w_itms4',itmsk4='$w_itmsk4',itm5='$w_itm5',itmk5='$w_itmk5',itme5='$w_itme5',itms5='$w_itms5',itmsk5='$w_itmsk5',itm6='$w_itm6',itmk6='$w_itmk6',itme6='$w_itme6',itms6='$w_itms6',itmsk6='$w_itmsk6' WHERE pid='$w_pid'"); //$db->query("UPDATE {$tablepre}players SET name='$w_name',pass='$w_pass',type='$w_type',endtime='$w_endtime',gd='$w_gd',sNo='$w_sNo',icon='$w_icon',club='$w_club',hp='$w_hp',mhp='$w_mhp',sp='$w_sp',msp='$w_msp',att='$w_att',def='$w_def',pls='$w_pls',lvl='$w_lvl',exp='$w_exp',money='$w_money',bid='$w_bid',inf='$w_inf',rage='$w_rage',pose='$w_pose',tactic='$w_tactic',state='$w_state',killnum='$w_killnum',wp='$w_wp',wk='$w_wk',wg='$w_wg',wc='$w_wc',wd='$w_wd',wf='$w_wf',teamID='$w_teamID',teamPass='$w_teamPass',wep='$w_wep',wepk='$w_wepk',wepe='$w_wepe',weps='$w_weps',wepsk='$w_wepsk',arb='$w_arb',arbk='$w_arbk',arbe='$w_arbe',arbs='$w_arbs',arbsk='$w_arbsk',arh='$w_arh',arhk='$w_arhk',arhe='$w_arhe',arhs='$w_arhs',arhsk='$w_arhsk',ara='$w_ara',arak='$w_arak',arae='$w_arae',aras='$w_aras',arask='$w_arask',arf='$w_arf',arfk='$w_arfk',arfe='$w_arfe',arfs='$w_arfs',arfsk='$w_arfsk',art='$w_art',artk='$w_artk',arte='$w_arte',arts='$w_arts',artsk='$w_artsk',itm0='$w_itm0',itmk0='$w_itmk0',itme0='$w_itme0',itms0='$w_itms0',itmsk0='$w_itmsk0',itm1='$w_itm1',itmk1='$w_itmk1',itme1='$w_itme1',itms1='$w_itms1',itmsk1='$w_itmsk1',itm2='$w_itm2',itmk2='$w_itmk2',itme2='$w_itme2',itms2='$w_itms2',itmsk2='$w_itmsk2',itm3='$w_itm3',itmk3='$w_itmk3',itme3='$w_itme3',itms3='$w_itms3',itmsk3='$w_itmsk3',itm4='$w_itm4',itmk4='$w_itmk4',itme4='$w_itme4',itms4='$w_itms4',itmsk4='$w_itmsk4',itm5='$w_itm5',itmk5='$w_itmk5',itme5='$w_itme5',itms5='$w_itms5',itmsk5='$w_itmsk5',itm6='$w_itm6',itmk6='$w_itmk6',itme6='$w_itme6',itms6='$w_itms6',itmsk6='$w_itmsk6' WHERE pid='$w_pid'");
} }
return; return;
}
//销毁尸体
function destory_corpse(&$edata)
{
if($edata)
{
$edata['state'] = 16; $edata['hp'] = 0; $edata['money'] = 0; $edata['pls'] = 99;
$edata['weps'] = 0;$edata['arbs'] = 0;$edata['arhs'] = 0;$edata['aras'] = 0;$edata['arfs'] = 0;$edata['arts'] = 0;
$edata['itms0'] = 0;$edata['itms1'] = 0;$edata['itms2'] = 0;$edata['itms3'] = 0;$edata['itms4'] = 0;$edata['itms5'] = 0;$edata['itms6'] = 0;
player_save($edata);
}
return;
} }
......
...@@ -227,6 +227,7 @@ function combat($active = 1, $wep_kind = '') { ...@@ -227,6 +227,7 @@ function combat($active = 1, $wep_kind = '') {
include_once GAME_ROOT . './include/state.func.php'; include_once GAME_ROOT . './include/state.func.php';
$killmsg = kill ( $wep_kind, $w_name, $w_type, $w_pid, $wep_temp ); $killmsg = kill ( $wep_kind, $w_name, $w_type, $w_pid, $wep_temp );
check_kill_events($pid,$w_pid);
$log .= npc_chat ( $w_type,$w_name, 'death' ); $log .= npc_chat ( $w_type,$w_name, 'death' );
include_once GAME_ROOT.'./include/game/achievement.func.php'; include_once GAME_ROOT.'./include/game/achievement.func.php';
......
...@@ -996,20 +996,6 @@ ...@@ -996,20 +996,6 @@
/********一些可复用函数 也许可以挪到其他地方********/ /********一些可复用函数 也许可以挪到其他地方********/
//销毁尸体
function destory_corpse(&$edata)
{
if($edata && $edata['hp']<=0)
{
//$edata['state'] = 16;
$edata['money'] = 0;
$edata['weps'] = 0;$edata['arbs'] = 0;$edata['arhs'] = 0;$edata['aras'] = 0;$edata['arfs'] = 0;$edata['arts'] = 0;
$edata['itms0'] = 0;$edata['itms1'] = 0;$edata['itms2'] = 0;$edata['itms3'] = 0;$edata['itms4'] = 0;$edata['itms5'] = 0;$edata['itms6'] = 0;
player_save($edata);
}
return;
}
//打包尸体 …… //打包尸体 ……
function pack_corpse(&$edata) function pack_corpse(&$edata)
{ {
......
...@@ -11,6 +11,53 @@ ...@@ -11,6 +11,53 @@
但是只要提供了正确的pa和pd当然也可以给玩家使用。 //哈哈!不行!玩家数据存不回去!傻了吧! //搞定了! //没搞定啊!!不能100%保证不出怪问题,所以还是不要给玩家使用 但是只要提供了正确的pa和pd当然也可以给玩家使用。 //哈哈!不行!玩家数据存不回去!傻了吧! //搞定了! //没搞定啊!!不能100%保证不出怪问题,所以还是不要给玩家使用
本质上就是一套整理过的原版战斗函数。*/ 本质上就是一套整理过的原版战斗函数。*/
//发现中立NPC $kind 0=中立单位 1=友军
function findneut(&$edata,$kind=0)
{
global $log,$action,$mode,$name,$main,$cmd,$battle_title,$pid,$db,$tablepre;
global $w_type,$w_name,$w_gd,$w_sNo,$w_icon,$w_hp,$w_mhp,$w_sp,$w_msp,$w_rage,$w_wep,$w_wepk,$w_wepe,$w_lvl,$w_pose,$w_tactic,$w_inf;
$battle_title = $kind ? '发现朋友' : '发现敌人?';
extract($edata,EXTR_PREFIX_ALL,'w');
init_battle(1);
if(!is_array($edata['clbpara'])) $edata['clbpara']=get_clbpara($edata['clbpara']);
$log .= "你发现了<span class=\"yellow\">$w_name</span>!<br>";
if(!$kind) $log .= "对方看起来没有敌意。<br>";
//TODO:把这一段挪到一个独立函数里
if($edata['clbpara']['post'] == $pid)
{
$log.="对方一看见你,便猛地朝你扑了过来!<br>
<br><span class='sienna'>“老板!有你的快递喔!”</span><br>
<br>你被这突然袭击吓了一跳!<br>
但对方只是从身上摸出了一个包裹样的东西扔给了你。然后又急匆匆地转身离开了。<br>
<br>……这是在搞啥……?<br><br>";
$action='';
global $itm0,$itmk0,$itme0,$itms0,$itmsk0;
$iid=$edata['clbpara']['postid'];
$itm0=$edata['itm'.$iid];$itmk0=$edata['itmk'.$iid];$itmsk0=$edata['itmsk'.$iid];
$itme0=$edata['itme'.$iid];$itms0=$edata['itms'.$iid];
//发一条news 表示快递已送达
$sponsorid = $edata['clbpara']['sponsor'];
$result = $db->query("SELECT * FROM {$tablepre}gambling WHERE uid = '$sponsorid'");
$sordata = $db->fetch_array($result);
addnews($now,'gpost_success',$sordata['uname'],$itm0,$name);
//再见了~快递员!
unset($edata['clbpara']['post']);unset($edata['clbpara']['postid']);unset($edata['clbpara']['sponsor']);
destory_corpse($edata);
//解除快递锁
$db->query("UPDATE {$tablepre}gambling SET bnid=0 WHERE uid='$sponsorid'");
}
include template('findneut');
$cmd = ob_get_contents();
ob_clean();
$main = 'battle';
return;
}
//战斗准备流程:通过传入的战斗双方ID初始化 //战斗准备流程:通过传入的战斗双方ID初始化
function rev_combat_prepare($nid,$eid) function rev_combat_prepare($nid,$eid)
{ {
......
...@@ -363,8 +363,6 @@ function discover($schmode = 0) { ...@@ -363,8 +363,6 @@ function discover($schmode = 0) {
combat(0); combat(0);
return; return;
} }
} }
$trap_dice=rand(0,99);//随机数,开始判断是否踩陷阱 $trap_dice=rand(0,99);//随机数,开始判断是否踩陷阱
...@@ -459,15 +457,12 @@ function discover($schmode = 0) { ...@@ -459,15 +457,12 @@ function discover($schmode = 0) {
// } // }
// } // }
include_once GAME_ROOT.'./include/game/attr.func.php'; include_once GAME_ROOT.'./include/game/attr.func.php';
$mode_dice = rand(0,99); $mode_dice = rand(0,99);
if($mode_dice < $schmode) { if($mode_dice < $schmode)
{
global $pid,$corpse_obbs,$teamID,$fog,$bid,$gamestate; global $pid,$corpse_obbs,$teamID,$fog,$bid,$gamestate;
// if($gamestate < 40) { global $clbpara,$clbstatusa,$clbstatusb,$clbstatusc,$clbstatusd,$clbstatuse;
// $result = $db->query("SELECT * FROM {$tablepre}players WHERE pls='$pls' AND pid!='$pid' AND pid!='$bid'");
// } else {
// $result = $db->query("SELECT * FROM {$tablepre}players WHERE pls='$pls' AND pid!='$pid'");
// }
$result = $db->query("SELECT * FROM {$tablepre}players WHERE pls='$pls' AND pid!='$pid'"); $result = $db->query("SELECT * FROM {$tablepre}players WHERE pls='$pls' AND pid!='$pid'");
if(!$db->num_rows($result)){ if(!$db->num_rows($result)){
$log .= '<span class="yellow">周围一个人都没有。</span><br>'; $log .= '<span class="yellow">周围一个人都没有。</span><br>';
...@@ -482,81 +477,123 @@ function discover($schmode = 0) { ...@@ -482,81 +477,123 @@ function discover($schmode = 0) {
$find_r = get_find_r($weather,$pls,$pose,$tactic,$club,$inf); $find_r = get_find_r($weather,$pls,$pose,$tactic,$club,$inf);
$find_obbs = $enemy_obbs + $find_r; $find_obbs = $enemy_obbs + $find_r;
foreach($enemyarray as $enum){ //移除了重复调用discover()的设定,尝试用一种正常一点的办法确保敌人/尸体发现率符合基础设定值,不然现在的尸体确实太难摸了。
//现在触发遇敌事件只会返回三种结果:1、发现尸体;2、发现敌人、3、敌人隐藏起来;所以实际的尸体发现率=$enemyrate*$corpse_obbs
$meetman_flag = 0;
foreach($enemyarray as $enum)
{
$db->data_seek($result, $enum); $db->data_seek($result, $enum);
$edata = $db->fetch_array($result); $edata = $db->fetch_array($result);
if(!$edata['type'] || $gamestate < 50){ if(!$edata['type'] || $gamestate < 50)
if($edata['hp'] > 0) { {
global $art,$artk,$name; if($edata['hp'] <= 0)
if ((!$edata['type'])&&($artk=='XX')&&(($edata['artk']!='XX')||($edata['art']!=$name))&&($gamestate<50)){ {
continue; //直接略过无效尸体
if($gamestate>=40||($edata['endtime']>($now-$corpseprotect))) continue;
$ret = false;
foreach(array('money','arhs','aras','arfs','arts','itms1','itms2','itms3','itms4','itms5','itms6') as $chkval)
{
if($edata[$chkval])
{
$ret = true;
break;
}
} }
if (($artk!='XX')&&($edata['artk']=='XX')&&($gamestate<50)){ if(!$ret) continue;
continue; //计算尸体发现率
$corpse_dice = rand(0,99);
if($corpse_dice < $corpse_obbs)
{
$meetman_flag = 1;
break;
} }
}
else
{
//直接略过决斗者
if ((!$edata['type'])&&($artk=='XX')&&(($edata['artk']!='XX')||($edata['art']!=$name))&&($gamestate<50)) continue;
if (($artk!='XX')&&($edata['artk']=='XX')&&($gamestate<50)) continue;
//计算活人发现率
$hide_r = get_hide_r($weather,$pls,$edata['pose'],$edata['tactic'],$edata['club'],$edata['inf']); $hide_r = get_hide_r($weather,$pls,$edata['pose'],$edata['tactic'],$edata['club'],$edata['inf']);
include_once GAME_ROOT.'./include/game/clubskills.func.php'; include_once GAME_ROOT.'./include/game/clubskills.func.php';
$hide_r *= get_clubskill_bonus_hide($edata['club'],$edata['skills']); $hide_r *= get_clubskill_bonus_hide($edata['club'],$edata['skills']);
$enemy_dice = rand(0,99); $enemy_dice = rand(0,99);
if($enemy_dice < ($find_obbs - $hide_r)) { $meetman_flag = $enemy_dice<($find_obbs - $hide_r) ? 1 : -1;
if($teamID&&(!$fog)&&($gamestate<40)&&($teamID == $edata['teamID'])){ break;
$bid = $edata['pid']; }
$action = 'team'.$edata['pid']; }
include_once GAME_ROOT.'./include/game/battle.func.php'; }
findteam($edata); if($meetman_flag>0)
return; {
} else { if($edata['hp'] > 0)
$active_r = get_active_r($weather,$pls,$pose,$tactic,$club,$inf,$edata['pose']); {
include_once GAME_ROOT.'./include/game/clubskills.func.php'; if(isset($edata['clbpara'])) $edata['clbpara']=get_clbpara($edata['clbpara']);
$active_r *= get_clubskill_bonus_active($club,$skills,$edata['club'],$edata['skills']); //发现队友
if ($active_r>96) $active_r=96; if($teamID&&(!$fog)&&($gamestate<40)&&($teamID == $edata['teamID']))
$bid = $edata['pid']; {
$active_dice = rand(0,99); $bid = $edata['pid'];
if($active_dice < $active_r) { $action = 'team'.$edata['pid'];
$action = 'enemy'.$edata['pid']; include_once GAME_ROOT.'./include/game/battle.func.php';
include_once GAME_ROOT.'./include/game/battle.func.php'; findteam($edata);
findenemy($edata); return;
return; }
} else { //发现中立NPC或友军 TODO:把这里条件判断挪到一个函数里
if (CURSCRIPT == 'botservice') elseif($edata['clbpara']['post'] == $pid)
{ {
echo "passive_battle=1\n"; $bid = $edata['pid'];
echo "passive_w_name={$edata['name']}\n"; $action = 'neut'.$edata['pid'];
echo "passive_w_type={$edata['type']}\n"; include_once GAME_ROOT.'./include/game/revcombat.func.php';
echo "passive_w_sNo={$edata['sNo']}\n"; findneut($edata,1);
} return;
include_once GAME_ROOT.'./include/game/combat.func.php'; }
combat(0); //发现敌人
return; else
} {
} $active_r = get_active_r($weather,$pls,$pose,$tactic,$club,$inf,$edata['pose']);
}else{ include_once GAME_ROOT.'./include/game/clubskills.func.php';
$hideflag = true; $active_r *= get_clubskill_bonus_active($club,$skills,$edata['club'],$edata['skills']);
} if ($active_r>96) $active_r=96;
} else { $bid = $edata['pid'];
$corpse_dice = rand(0,99); $active_dice = rand(0,99);
if($corpse_dice < $corpse_obbs) { //先制
if($active_dice < $active_r)
if($gamestate <40 && $edata['endtime'] < $now - $corpseprotect && (($edata['weps'] && $edata['wepe'])||($edata['arbs'] && $edata['arbe'])||$edata['arhs']||$edata['aras']||$edata['arfs']||$edata['arts']||$edata['itms0']||$edata['itms1']||$edata['itms2']||$edata['itms3']||$edata['itms4']||$edata['itms5']||$edata['money'])){ {
$action = 'enemy'.$edata['pid'];
$bid = $edata['pid']; include_once GAME_ROOT.'./include/game/battle.func.php';
$action = 'corpse'.$edata['pid']; findenemy($edata);
include_once GAME_ROOT.'./include/game/battle.func.php'; return;
findcorpse($edata); }
return; //挨打
} else { else
//这看上去是个bug…… 会导致地图上最后一个兵很难摸到…… {
//改成discover(100)应该就能解决问题…… 但修复了可能导致平衡性问题…… 所以暂时留在这…… if (CURSCRIPT == 'botservice')
discover(50); {
return; echo "passive_battle=1\n";
echo "passive_w_name={$edata['name']}\n";
echo "passive_w_type={$edata['type']}\n";
echo "passive_w_sNo={$edata['sNo']}\n";
} }
include_once GAME_ROOT.'./include/game/combat.func.php';
combat(0);
return;
} }
} }
} }
else
{
$bid = $edata['pid'];
$action = 'corpse'.$edata['pid'];
include_once GAME_ROOT.'./include/game/battle.func.php';
findcorpse($edata);
return;
}
} }
if($hideflag == true){ elseif($meetman_flag < 0)
{
$log .= '似乎有人隐藏着……<br>'; $log .= '似乎有人隐藏着……<br>';
}else{ }
else
{
$log .= '<span class="yellow">周围一个人都没有。</span><br>'; $log .= '<span class="yellow">周围一个人都没有。</span><br>';
} }
$mode = 'command'; $mode = 'command';
...@@ -566,11 +603,6 @@ function discover($schmode = 0) { ...@@ -566,11 +603,6 @@ function discover($schmode = 0) {
$find_obbs = $item_obbs + $find_r; $find_obbs = $item_obbs + $find_r;
$item_dice = rand(0,99); $item_dice = rand(0,99);
if($item_dice < $find_obbs) { if($item_dice < $find_obbs) {
//$mapfile = GAME_ROOT."./gamedata/mapitem/{$pls}mapitem.php";
//$mapitem = openfile($mapfile);
//$itemnum = sizeof($mapitem) - 1;
// $result = $db->query("SELECT * FROM {$tablepre}mapitem WHERE map='$pls'");
// $itemnum = $db->num_rows($result);
$result = $db->query("SELECT * FROM {$tablepre}mapitem WHERE pls = '$pls'"); $result = $db->query("SELECT * FROM {$tablepre}mapitem WHERE pls = '$pls'");
$itemnum = $db->num_rows($result); $itemnum = $db->num_rows($result);
if($itemnum <= 0){ if($itemnum <= 0){
...@@ -589,10 +621,6 @@ function discover($schmode = 0) { ...@@ -589,10 +621,6 @@ function discover($schmode = 0) {
$itmsk0=$mi['itmsk']; $itmsk0=$mi['itmsk'];
$iid=$mi['iid']; $iid=$mi['iid'];
$db->query("DELETE FROM {$tablepre}mapitem WHERE iid='$iid'"); $db->query("DELETE FROM {$tablepre}mapitem WHERE iid='$iid'");
//list($itm0,$itmk0,$itme0,$itms0,$itmsk0) = explode(',', $mapitem[$itemno]);
//array_splice($mapitem,$itemno,1);
//writeover($mapfile,implode('', $mapitem),'wb');
//unset($mapitem);
if($itms0){ if($itms0){
include_once GAME_ROOT.'./include/game/itemmain.func.php'; include_once GAME_ROOT.'./include/game/itemmain.func.php';
......
...@@ -475,12 +475,13 @@ function press_bomb(){ ...@@ -475,12 +475,13 @@ function press_bomb(){
return; return;
} }
function shoplist($sn) { function shoplist($sn,$getlist=NULL) {
global $gamecfg,$mode,$itemdata,$areanum,$areaadd,$iteminfo,$itemspkinfo,$club; global $gamecfg,$mode,$itemdata,$areanum,$areaadd,$iteminfo,$itemspkinfo,$club;
global $db,$tablepre; global $db,$tablepre;
$arean = floor($areanum / $areaadd); $arean = floor($areanum / $areaadd);
$result=$db->query("SELECT * FROM {$tablepre}shopitem WHERE kind = '$sn' AND area <= '$arean' AND num > '0' AND price > '0' ORDER BY sid"); $result=$db->query("SELECT * FROM {$tablepre}shopitem WHERE kind = '$sn' AND area <= '$arean' AND num > '0' AND price > '0' ORDER BY sid");
$shopnum = $db->num_rows($result); $shopnum = $db->num_rows($result);
$itemdata = Array();
for($i=0;$i< $shopnum;$i++){ for($i=0;$i< $shopnum;$i++){
$itemlist = $db->fetch_array($result); $itemlist = $db->fetch_array($result);
$itemdata[$i]['sid']=$itemlist['sid']; $itemdata[$i]['sid']=$itemlist['sid'];
...@@ -489,26 +490,38 @@ function shoplist($sn) { ...@@ -489,26 +490,38 @@ function shoplist($sn) {
$itemdata[$i]['price']= $club == 11 ? round($itemlist['price']*0.75) : $itemlist['price']; $itemdata[$i]['price']= $club == 11 ? round($itemlist['price']*0.75) : $itemlist['price'];
$itemdata[$i]['area']=$itemlist['area']; $itemdata[$i]['area']=$itemlist['area'];
$itemdata[$i]['item']=$itemlist['item']; $itemdata[$i]['item']=$itemlist['item'];
$itemdata[$i]['item_words']= parse_itm_desc($itemdata[$i]['item'],'m');
$itemdata[$i]['itme']=$itemlist['itme']; $itemdata[$i]['itme']=$itemlist['itme'];
$itemdata[$i]['itms']=$itemlist['itms']; $itemdata[$i]['itms']=$itemlist['itms'];
//list($sid,$kind,$num,$price,$area,$item,$itmk,$itme,$itms,$itmsk)=explode(',',$itemlist); //list($sid,$kind,$num,$price,$area,$item,$itmk,$itme,$itms,$itmsk)=explode(',',$itemlist);
foreach($iteminfo as $info_key => $info_value){ foreach($iteminfo as $info_key => $info_value){
if(strpos($itemlist['itmk'],$info_key)===0){ if(strpos($itemlist['itmk'],$info_key)===0){
$itemdata[$i]['itmk_words'] = $info_value; if(isset($getlist)) $itemdata[$i]['itmk'] = $info_value;
$itemdata[$i]['itmk_words'] = parse_itm_desc($info_key,'k');
break; break;
} }
} }
$itemdata[$i]['itmsk_words'] = ''; $itemdata[$i]['itmsk_words'] = '';
if($itemlist['itmsk'] && ! is_numeric($itemlist['itmsk'])){ if($itemlist['itmsk'] && ! is_numeric($itemlist['itmsk'])){
for ($j = 0; $j < strlen($itemlist['itmsk']); $j++) { if(!isset($getlist))
$sub = substr($itemlist['itmsk'],$j,1); {
if(!empty($sub)){ $tmp_sk = get_itmsk_array($itemlist['itmsk']);
$itemdata[$i]['itmsk_words'] .= $itemspkinfo[$sub]; foreach($tmp_sk as $sk) $itemdata[$i]['itmsk_words'].= parse_itm_desc($sk,'sk');
}
else
{
for ($j = 0; $j < strlen($itemlist['itmsk']); $j++) {
$sub = substr($itemlist['itmsk'],$j,1);
if(!empty($sub) && isset($itemspkinfo[$sub])){
$itemdata[$i]['itmsk_words'] .= $itemspkinfo[$sub];
}
} }
} }
} }
//$itemdata[$i] = array('sid' => $sid, 'kind' => $kind,'num' => $num, 'price' => $price, 'area' => $area, 'item' => $item,'itmk_words' => $itmk_words,'itme' => $itme, 'itms' => $itms,'itmsk_words' => $itmsk_words); //$itemdata[$i] = array('sid' => $sid, 'kind' => $kind,'num' => $num, 'price' => $price, 'area' => $area, 'item' => $item,'itmk_words' => $itmk_words,'itme' => $itme, 'itms' => $itms,'itmsk_words' => $itmsk_words);
} }
if(isset($getlist)) return $itemdata;
$mode = 'shop'; $mode = 'shop';
......
...@@ -492,10 +492,161 @@ function putmicrotime($t_s,$t_e,$file,$info) ...@@ -492,10 +492,161 @@ function putmicrotime($t_s,$t_e,$file,$info)
writeover( $file.'.txt',"$info ;执行时间:$mtime 毫秒 \n",'ab'); writeover( $file.'.txt',"$info ;执行时间:$mtime 毫秒 \n",'ab');
} }
//格式化储存player表 可能也是四面的遗产
function update_db_player_structure($type=0)
{
global $db,$tablepre,$checkstr;
$db_player_structure = $db_player_structure_types = $tpldata = Array();
$dps_need_update = 0;//判定是否需要更新玩家字段
$dps_file = GAME_ROOT.'./gamedata/bak/db_player_structure.config.php';
$sql_file = GAME_ROOT.'./gamedata/sql/players.sql';
if(!file_exists($dps_file) || filemtime($sql_file) > filemtime($dps_file)){
$dps_need_update = 1;
}
if($dps_need_update){//如果要更新,直接新建一个表,不需要依赖已有的players表
$sql = file_get_contents($sql_file);
$sql = str_replace("\r", "\n", str_replace(' bra_', ' '.$tablepre.'tmp_', $sql));
$db->queries($sql);
$result = $db->query("DESCRIBE {$tablepre}tmp_players");
while ($sttdata = $db->fetch_array($result))
{
global ${$sttdata['Field']};
$db_player_structure[] = $sttdata['Field'];
$db_player_structure_types[$sttdata['Field']] = $sttdata['Type'];
//array_push($db_player_structure,$pdata['Field']);
}
$dps_cont = str_replace('?>','',str_replace('<?','<?php',$checkstr));
$dps_cont .= '$db_player_structure = ' . var_export($db_player_structure,1).";\r\n".'$db_player_structure_types = ' . var_export($db_player_structure_types,1).";\r\n?>";
writeover($dps_file, $dps_cont);
chmod($dps_file,0777);
}else{//若不需要更新,则直接读文件就好
include $dps_file ;
}
return $type ? $db_player_structure_types : $db_player_structure;
}
//返回一个只有数据库合法字段键名的pdata数组
function player_format_with_db_structure($data){
$ndata=Array();
$db_player_structure = update_db_player_structure();
foreach ($db_player_structure as $key){
if (isset($data[$key]))
{
if(is_array($data[$key])) $data[$key]=json_encode($data[$key]);
$ndata[$key]=$data[$key];
}
}
return $ndata;
}
//为显示在主界面、尸体发现界面、游戏帮助界面的道具名、道具类、道具属性添加额外描述
//传入$n=道具名/类/属性;$t='m'(使用名称数组)/'k'(类别)/'sk'(属性);$short=1(传入的$n为数组情况下才有效,缩写属性);$class(如果传入的$n没有匹配的样式,则应用该样式)
function parse_itm_desc($n,$t,$short=0,$c=NULL)
{
global $iteminfo,$itemspkinfo;
global $iteminfo_tooltip,$itemkinfo_tooltip,$itemspkinfo_tooltip,$iteminfo_tooltip_desc;
$s = "<span "; $p1 = ''; $p2 = ''; $ret = '';
switch($t)
{
//处理类别
case $t=='k':
if(isset($itemkinfo_tooltip[$n]['title'])) $p1 = "title=\"".$itemkinfo_tooltip[$n]['title']."\"";
if(isset($itemkinfo_tooltip[$n]['class'])) $p2 = "class=\"".$itemkinfo_tooltip[$n]['class']."\"";
$n = $iteminfo[$n];
break;
//处理属性
case $t=='sk':
//如果传入的n为数组,且开启缩写模式,则输出一段缩写
if($short && is_array($n))
{
$p1 = "title=\"";
$sk1 = $itemspkinfo[current($n)]; $sk2 = $itemspkinfo[end($n)]; $skn = '';
foreach($n as $sk_value)
{
if(!empty($skn)) $skn .='+'.$itemspkinfo[$sk_value];
else $skn = $itemspkinfo[$sk_value];
}
$p1.=$skn; $n = $sk1.'+...+'.$sk2; $p2 = "\"";
}
else
{
if(isset($itemspkinfo_tooltip[$n]['title'])) $p1 = "title=\"".$itemspkinfo_tooltip[$n]['title']."\"";
if(isset($itemspkinfo_tooltip[$n]['class'])) $p2 = "class=\"".$itemspkinfo_tooltip[$n]['class']."\"";
$n = $itemspkinfo[$n];
}
break;
//处理名字
case $t=='m':
$filter_n = preg_replace('/锋利的|电气|毒性|钉|\[.*\]|-改/', '', $n);
if(isset($iteminfo_tooltip[$filter_n]))
{
if(is_array($iteminfo_tooltip[$filter_n]))
{
if(isset($iteminfo_tooltip[$filter_n]['title'])) $p1 = "title=\"".$iteminfo_tooltip[$filter_n]['title']."\"";
if(isset($iteminfo_tooltip[$filter_n]['class'])) $p2 = "class=\"".$iteminfo_tooltip[$filter_n]['class']."\"";
}
elseif(isset($iteminfo_tooltip_desc[$iteminfo_tooltip[$filter_n]]))
{ //使用可复用描述 越来越离谱了
if(isset($iteminfo_tooltip_desc[$iteminfo_tooltip[$filter_n]]['title'])) $p1 = "title=\"".$iteminfo_tooltip_desc[$iteminfo_tooltip[$filter_n]]['title']."\"";
if(isset($iteminfo_tooltip_desc[$iteminfo_tooltip[$filter_n]]['class'])) $p2 = "class=\"".$iteminfo_tooltip_desc[$iteminfo_tooltip[$filter_n]]['class']."\"";
}
}
break;
}
//传入了样式 且道具没有与预设匹配的样式 则使用传入的样式
if(isset($c) && !$p2) $p2 = "class=\"".$c."\"";
$p3 = " >"; $e = "</span>";
$ret = $s.$p1.$p2.$p3.$n.$e;
return $ret;
}
//---------------------------------------- //----------------------------------------
// 字符串处理 // 字符串处理
//---------------------------------------- //----------------------------------------
//将sk转为数组格式 只会转换登记过的属性
function get_itmsk_array($sk_value)
{
global $itemspkinfo;
$ret = Array();
$i = 0;
while ($i < strlen($sk_value))
{
$sub = substr($sk_value,$i,1);
$i++;
if(!empty($sub) && array_key_exists($sub,$itemspkinfo)) array_push($ret,$sub);
}
return $ret;
}
//还原itmsk为字符串 $max_length:字符串长度上限
function get_itmsk_strlen($sk_value,$max_length=5)
{
global $itemspkinfo;
$ret = ''; $sk_count = 0;
foreach($sk_value as $sk)
{
if(array_key_exists($sk,$itemspkinfo))
{
$ret.=$sk;
$sk_count+=strlen($sk);
}
if($sk_count>=$max_length) break;
}
return $ret;
}
function get_clbpara($para)
{
return json_decode($para,true);
}
function set_clbpara($para)
{
return json_encode($para);
}
function mgzdecode($data) function mgzdecode($data)
{ {
return gzinflate(substr($data,10,-8)); return gzinflate(substr($data,10,-8));
......
...@@ -31,8 +31,6 @@ function nparse_news($start = 0, $range = 0 ){//$type = '') { ...@@ -31,8 +31,6 @@ function nparse_news($start = 0, $range = 0 ){//$type = '') {
$nday = $day; $nday = $day;
} }
//tooltip处理(可能不用include……)
include_once GAME_ROOT.'./include/game.func.php';
//死法(除DN外):道具名登记在$d上;第四个参数:没有检查到特殊样式的给一个红色 //死法(除DN外):道具名登记在$d上;第四个参数:没有检查到特殊样式的给一个红色
if(strpos($news,'death')!==false && $news!=='death28' && isset($d)) $d = parse_itm_desc($d,'m',0,"red"); if(strpos($news,'death')!==false && $news!=='death28' && isset($d)) $d = parse_itm_desc($d,'m',0,"red");
//赠送道具、吃到毒补给、陷阱、改变天气、强化武器、唱歌、打开礼物盒:道具名登记在$c上; //赠送道具、吃到毒补给、陷阱、改变天气、强化武器、唱歌、打开礼物盒:道具名登记在$c上;
...@@ -286,6 +284,12 @@ function nparse_news($start = 0, $range = 0 ){//$type = '') { ...@@ -286,6 +284,12 @@ function nparse_news($start = 0, $range = 0 ){//$type = '') {
$newsinfo .= "<li>{$hour}{$min}{$sec}秒,<span class=\"yellow\">{$a}用零散的元素组合出了{$b}!</span><br>\n"; $newsinfo .= "<li>{$hour}{$min}{$sec}秒,<span class=\"yellow\">{$a}用零散的元素组合出了{$b}!</span><br>\n";
} elseif($news == 'emix_failed') { } elseif($news == 'emix_failed') {
$newsinfo .= "<li>{$hour}{$min}{$sec}秒,<span class=\"red\">{$a}试图把零散的元素重新组合起来,但是失败了!哎呀呀、这可真是……</span><br>\n"; $newsinfo .= "<li>{$hour}{$min}{$sec}秒,<span class=\"red\">{$a}试图把零散的元素重新组合起来,但是失败了!哎呀呀、这可真是……</span><br>\n";
} elseif($news == 'gpost') {
$newsinfo .= "<li>{$hour}{$min}{$sec}秒,<span class=\"sienna\">{$a}{$c}赞助了{$e}{$b}!快递员正带着包裹前往【{$d}】</span><br>\n";
} elseif($news == 'gpost_success') {
$newsinfo .= "<li>{$hour}{$min}{$sec}秒,<span class=\"sienna\">{$a}{$c}赞助的{$b}已成功送达!</span><br>\n";
} elseif($news == 'gpost_failed') {
$newsinfo .= "<li>{$hour}{$min}{$sec}秒,<span class=\"sienna\">{$a}向场内玩家赞助的{$b}竟然被人半路截走了!真是天有不测风云……</span><br>\n";
} else { } else {
$newsinfo .= "<li>$time,$news,$a,$b,$c,$d<br>\n"; $newsinfo .= "<li>$time,$news,$a,$b,$c,$d<br>\n";
} }
......
...@@ -538,4 +538,32 @@ function rest($command) { ...@@ -538,4 +538,32 @@ function rest($command) {
return; return;
} }
//登记一些特殊的死亡事件
function check_kill_events($kid,$eid)
{
global $db,$tablepre,$log;
$result = $db->query("SELECT * FROM {$tablepre}players WHERE pid='$eid'");
$edata = $db->fetch_array($result);
if(!is_array($edata['clbpara'])) $edata['clbpara']=get_clbpara($edata['clbpara']);
if($edata['clbpara']['post'])
{
//发一条news 表示快递被劫走了
$log.="<span class='sienna'>某样东西从{$edata['name']}身上掉了出来……</span><br>";
$iid = $edata['clbpara']['postid'];
$sponsorid = $edata['clbpara']['sponsor'];
$result = $db->query("SELECT * FROM {$tablepre}gambling WHERE uid = '$sponsorid'");
$sordata = $db->fetch_array($result);
addnews($now,'gpost_failed',$sordata['uname'],$edata['itm'.$iid]);
//消除快递相关参数
unset($edata['clbpara']['post']);unset($edata['clbpara']['postid']);unset($edata['clbpara']['sponsor']);
//解除快递锁
$db->query("UPDATE {$tablepre}gambling SET bnid=0 WHERE uid='$sponsorid'");
player_save($edata);
}
return;
}
?> ?>
This diff is collapsed.
...@@ -262,6 +262,26 @@ ...@@ -262,6 +262,26 @@
<td>子类型</td> <td>子类型</td>
<td><input size="20" type="text" name="itmsk6" value="{$npc['itmsk6']}" maxlength="20"></td> <td><input size="20" type="text" name="itmsk6" value="{$npc['itmsk6']}" maxlength="20"></td>
</tr> </tr>
<tr>
<td>社团参数A</td>
<td><input size="20" type="text" name="clbstatusa" value="{$npc['clbstatusa']}" maxlength="20"></td>
<td>社团参数B</td>
<td><input size="20" type="text" name="clbstatusb" value="{$npc['clbstatusb']}" maxlength="20"></td>
<td>社团参数C</td>
<td><input size="20" type="text" name="clbstatusc" value="{$npc['clbstatusc']}" maxlength="20"></td>
</tr>
<tr>
<td>社团参数D</td>
<td><input size="20" type="text" name="clbstatusd" value="{$npc['clbstatusd']}" maxlength="20"></td>
<td>社团参数E</td>
<td><input size="20" type="text" name="clbstatuse" value="{$npc['clbstatuse']}" maxlength="20"></td>
<td></td>
<td></td>
</tr>
<tr>
<td>社团参数集</td>
<td><textarea cols="20" rows="4" style="overflow:auto" name="clbpara">{$npc['clbpara']}</textarea></td>
</tr>
</table> </table>
<input type="submit" value="修改NPC数值" onclick="$('command').value = 'submitedit'"> <input type="submit" value="修改NPC数值" onclick="$('command').value = 'submitedit'">
</form> </form>
......
...@@ -270,6 +270,26 @@ ...@@ -270,6 +270,26 @@
<td></td> <td></td>
<td></td> <td></td>
</tr> </tr>
<tr>
<td>社团参数A</td>
<td><input size="20" type="text" name="clbstatusa" value="{$pc['clbstatusa']}" maxlength="20"></td>
<td>社团参数B</td>
<td><input size="20" type="text" name="clbstatusb" value="{$pc['clbstatusb']}" maxlength="20"></td>
<td>社团参数C</td>
<td><input size="20" type="text" name="clbstatusc" value="{$pc['clbstatusc']}" maxlength="20"></td>
</tr>
<tr>
<td>社团参数D</td>
<td><input size="20" type="text" name="clbstatusd" value="{$pc['clbstatusd']}" maxlength="20"></td>
<td>社团参数E</td>
<td><input size="20" type="text" name="clbstatuse" value="{$pc['clbstatuse']}" maxlength="20"></td>
<td></td>
<td></td>
</tr>
<tr>
<td>社团参数集</td>
<td><textarea cols="20" rows="4" style="overflow:auto" name="clbpara">{$pc['clbpara']}</textarea></td>
</tr>
</table> </table>
<input type="submit" value="修改玩家数值" onclick="$('command').value = 'submitedit'"> <input type="submit" value="修改玩家数值" onclick="$('command').value = 'submitedit'">
</form> </form>
......
<input type="button" class="cmdbutton" name="back" value="返回" onclick="postCmd('gamecmd','command.php');"><br><br>
\ No newline at end of file
<!--{if $cuser && isset($credits2)}-->你的{lang credits2}:<span id="credits2" class="yellow">$credits2</span>
<!--{if $gbnum}-->当前奖池:{$gbpool}。<!--{else}-->当前还未开设赌局。<!--{/if}-->当前分成系数:{$nowodds} 你可以选择一位对象,消耗<span class="yellow">{lang credits2}</span>为ta<span class="yellow">下注</span><span class="yellow">赞助</span>
<span class="yellow" id="gbinfo"> 选择对象:
$gbinfo
</span>
<!--{if $cuser && isset($credits2)}-->
你的{lang credits2}:<span id="credits2" class="yellow">$credits2</span>
<!--{if $gbact == 1}-->
<input type="hidden" name="bet" value="{$gbudata['bid']}">
<!--{else}-->
选择:
<select name="bet"> <select name="bet">
<option value="none">不选择 <option value="none">不选择
<!--{loop $alivedata $alive}--><option value="{$alive['pid']}">{$alive['name']}<!--{/loop}--> <!--{loop $alivedata $alive}--><option value="{$alive['pid']}">{$alive['name']}<!--{/loop}-->
</select> </select>
<!--{/if}--> <br>
<!--{/if}-->
赌注:<input type="text" name="wager" value="1" size="4" maxlength="6"> <!--{if $cuser && isset($credits2)}-->
赞助:
<span id="gbshop_box">
<select id="gbid" name="gbid" style="width:100px" onchange="$('command').value='gbid';postCmd('gamecmd','command.php');this.disabled=true;">
<option value="main">可赞助商品一览</option>
<!--{loop $gshoplist $gshopid $gshopname}-->
<optgroup label="$gshopname">
<!--{loop shoplist($gshopid,1) $idata}-->
<!--{if isset($idata['sid']) && $idata['price']<=$credits2*$credits2_values}-->
<option value="$idata['sid']">$idata['item']/$idata['itmk']/$idata['itme']/$idata['itms']<!--{if $idata['itmsk_words']}-->/$idata['itmsk_words']<!--{/if}--> 【价:$idata['price'],数:$idata['num']】</option>
<!--{/if}-->
<!--{/loop}-->
<!--{/loop}-->
</select>
</span>
数量:<input type="text" name="gbinum" value="1" size="4" maxlength="6">
<input type="button" value="下单" onClick="$('gbmode').value='gsponsor';postCmd('alive','alive.php');">
<br>
<!--{/if}-->
<!--{if $gbnum}-->当前奖池:{$gbpool}。当前分成系数:{$nowodds}。<!--{else}-->当前还未开设赌局。<!--{/if}-->
<!--{if $cuser && isset($credits2)}-->
下注:<input type="text" name="wager" value="1" size="4" maxlength="6">
<input type="button" <!--{if $gbact == 1}-->value="追加"<!--{else}-->value="下注"<!--{/if}--> onClick="$('gbmode').value='gamble';postCmd('alive','alive.php');"> <input type="button" <!--{if $gbact == 1}-->value="追加"<!--{else}-->value="下注"<!--{/if}--> onClick="$('gbmode').value='gamble';postCmd('alive','alive.php');">
<!--{/if}--> <br>
\ No newline at end of file <!--{/if}-->
<span class="yellow" id="gbinfo">
$gbinfo
</span>
\ No newline at end of file
...@@ -3885,7 +3885,7 @@ ...@@ -3885,7 +3885,7 @@
<td class="b3"><span>2禁刷新2个</span></td></tr> <td class="b3"><span>2禁刷新2个</span></td></tr>
<tr><td class="b3" height=20px><span>SCP研究设施</span></td> <tr><td class="b3" height=20px><span>SCP研究设施</span></td>
<td class="b3"><span>浮☆云</span></td> <td class="b3"><span>浮☆云</span></td>
<td class="b3"><span></span></td> <td class="b3"><span>全地图唯一的野生浮云礼物盒</span></td>
<td class="b3"><span>1/1</span></td> <td class="b3"><span>1/1</span></td>
<td class="b3"><span></span></td> <td class="b3"><span></span></td>
<td class="b3"><span>0禁刷新1个</span></td></tr> <td class="b3"><span>0禁刷新1个</span></td></tr>
...@@ -6428,186 +6428,6 @@ ...@@ -6428,186 +6428,6 @@
<td class="b3"><span></span></td> <td class="b3"><span></span></td>
<td class="b3"><span>0禁刷新10个</span></td></tr> <td class="b3"><span>0禁刷新10个</span></td></tr>
<tr><td class="b3" height=20px><span>全图随机</span></td> <tr><td class="b3" height=20px><span>全图随机</span></td>
<td class="b3"><span>提示纸条金</span></td>
<td class="b3"><span>特殊</span></td>
<td class="b3"><span>1/1</span></td>
<td class="b3"><span></span></td>
<td class="b3"><span>0禁刷新3个</span></td></tr>
<tr><td class="b3" height=20px><span>全图随机</span></td>
<td class="b3"><span>提示纸条木</span></td>
<td class="b3"><span>特殊</span></td>
<td class="b3"><span>1/1</span></td>
<td class="b3"><span></span></td>
<td class="b3"><span>0禁刷新3个</span></td></tr>
<tr><td class="b3" height=20px><span>全图随机</span></td>
<td class="b3"><span>提示纸条水</span></td>
<td class="b3"><span>特殊</span></td>
<td class="b3"><span>1/1</span></td>
<td class="b3"><span></span></td>
<td class="b3"><span>0禁刷新3个</span></td></tr>
<tr><td class="b3" height=20px><span>全图随机</span></td>
<td class="b3"><span>提示纸条火</span></td>
<td class="b3"><span>特殊</span></td>
<td class="b3"><span>1/1</span></td>
<td class="b3"><span></span></td>
<td class="b3"><span>0禁刷新3个</span></td></tr>
<tr><td class="b3" height=20px><span>全图随机</span></td>
<td class="b3"><span>提示纸条土</span></td>
<td class="b3"><span>特殊</span></td>
<td class="b3"><span>1/1</span></td>
<td class="b3"><span></span></td>
<td class="b3"><span>0禁刷新3个</span></td></tr>
<tr><td class="b3" height=20px><span>全图随机</span></td>
<td class="b3"><span>提示纸条城壁</span></td>
<td class="b3"><span>特殊</span></td>
<td class="b3"><span>1/1</span></td>
<td class="b3"><span></span></td>
<td class="b3"><span>0禁刷新3个</span></td></tr>
<tr><td class="b3" height=20px><span>全图随机</span></td>
<td class="b3"><span>提示纸条主教</span></td>
<td class="b3"><span>特殊</span></td>
<td class="b3"><span>1/1</span></td>
<td class="b3"><span></span></td>
<td class="b3"><span>0禁刷新3个</span></td></tr>
<tr><td class="b3" height=20px><span>全图随机</span></td>
<td class="b3"><span>提示纸条骑士</span></td>
<td class="b3"><span>特殊</span></td>
<td class="b3"><span>1/1</span></td>
<td class="b3"><span></span></td>
<td class="b3"><span>0禁刷新3个</span></td></tr>
<tr><td class="b3" height=20px><span>全图随机</span></td>
<td class="b3"><span>提示纸条国王</span></td>
<td class="b3"><span>特殊</span></td>
<td class="b3"><span>1/1</span></td>
<td class="b3"><span></span></td>
<td class="b3"><span>0禁刷新3个</span></td></tr>
<tr><td class="b3" height=20px><span>全图随机</span></td>
<td class="b3"><span>提示纸条皇后</span></td>
<td class="b3"><span>特殊</span></td>
<td class="b3"><span>1/1</span></td>
<td class="b3"><span></span></td>
<td class="b3"><span>0禁刷新3个</span></td></tr>
<tr><td class="b3" height=20px><span>全图随机</span></td>
<td class="b3"><span>提示纸条雷</span></td>
<td class="b3"><span>特殊</span></td>
<td class="b3"><span>1/1</span></td>
<td class="b3"><span></span></td>
<td class="b3"><span>0禁刷新3个</span></td></tr>
<tr><td class="b3" height=20px><span>全图随机</span></td>
<td class="b3"><span>提示纸条风</span></td>
<td class="b3"><span>特殊</span></td>
<td class="b3"><span>1/1</span></td>
<td class="b3"><span></span></td>
<td class="b3"><span>0禁刷新3个</span></td></tr>
<tr><td class="b3" height=20px><span>全图随机</span></td>
<td class="b3"><span>提示纸条震</span></td>
<td class="b3"><span>特殊</span></td>
<td class="b3"><span>1/1</span></td>
<td class="b3"><span></span></td>
<td class="b3"><span>0禁刷新3个</span></td></tr>
<tr><td class="b3" height=20px><span>全图随机</span></td>
<td class="b3"><span>提示纸条泽</span></td>
<td class="b3"><span>特殊</span></td>
<td class="b3"><span>1/1</span></td>
<td class="b3"><span></span></td>
<td class="b3"><span>0禁刷新3个</span></td></tr>
<tr><td class="b3" height=20px><span>全图随机</span></td>
<td class="b3"><span>提示纸条氢</span></td>
<td class="b3"><span>特殊</span></td>
<td class="b3"><span>1/1</span></td>
<td class="b3"><span></span></td>
<td class="b3"><span>0禁刷新3个</span></td></tr>
<tr><td class="b3" height=20px><span>全图随机</span></td>
<td class="b3"><span>提示纸条氦</span></td>
<td class="b3"><span>特殊</span></td>
<td class="b3"><span>1/1</span></td>
<td class="b3"><span></span></td>
<td class="b3"><span>0禁刷新3个</span></td></tr>
<tr><td class="b3" height=20px><span>全图随机</span></td>
<td class="b3"><span>提示纸条锂</span></td>
<td class="b3"><span>特殊</span></td>
<td class="b3"><span>1/1</span></td>
<td class="b3"><span></span></td>
<td class="b3"><span>0禁刷新3个</span></td></tr>
<tr><td class="b3" height=20px><span>全图随机</span></td>
<td class="b3"><span>提示纸条铍</span></td>
<td class="b3"><span>特殊</span></td>
<td class="b3"><span>1/1</span></td>
<td class="b3"><span></span></td>
<td class="b3"><span>0禁刷新3个</span></td></tr>
<tr><td class="b3" height=20px><span>全图随机</span></td>
<td class="b3"><span>提示纸条硼</span></td>
<td class="b3"><span>特殊</span></td>
<td class="b3"><span>1/1</span></td>
<td class="b3"><span></span></td>
<td class="b3"><span>0禁刷新3个</span></td></tr>
<tr><td class="b3" height=20px><span>全图随机</span></td>
<td class="b3"><span>提示纸条碳</span></td>
<td class="b3"><span>特殊</span></td>
<td class="b3"><span>1/1</span></td>
<td class="b3"><span></span></td>
<td class="b3"><span>0禁刷新3个</span></td></tr>
<tr><td class="b3" height=20px><span>全图随机</span></td>
<td class="b3"><span>提示纸条氮</span></td>
<td class="b3"><span>特殊</span></td>
<td class="b3"><span>1/1</span></td>
<td class="b3"><span></span></td>
<td class="b3"><span>0禁刷新3个</span></td></tr>
<tr><td class="b3" height=20px><span>全图随机</span></td>
<td class="b3"><span>提示纸条氧</span></td>
<td class="b3"><span>特殊</span></td>
<td class="b3"><span>1/1</span></td>
<td class="b3"><span></span></td>
<td class="b3"><span>0禁刷新3个</span></td></tr>
<tr><td class="b3" height=20px><span>全图随机</span></td>
<td class="b3"><span>提示纸条氟</span></td>
<td class="b3"><span>特殊</span></td>
<td class="b3"><span>1/1</span></td>
<td class="b3"><span></span></td>
<td class="b3"><span>0禁刷新3个</span></td></tr>
<tr><td class="b3" height=20px><span>全图随机</span></td>
<td class="b3"><span>提示纸条氖</span></td>
<td class="b3"><span>特殊</span></td>
<td class="b3"><span>1/1</span></td>
<td class="b3"><span></span></td>
<td class="b3"><span>0禁刷新3个</span></td></tr>
<tr><td class="b3" height=20px><span>全图随机</span></td>
<td class="b3"><span>提示纸条钠</span></td>
<td class="b3"><span>特殊</span></td>
<td class="b3"><span>1/1</span></td>
<td class="b3"><span></span></td>
<td class="b3"><span>0禁刷新3个</span></td></tr>
<tr><td class="b3" height=20px><span>全图随机</span></td>
<td class="b3"><span>提示纸条镁</span></td>
<td class="b3"><span>特殊</span></td>
<td class="b3"><span>1/1</span></td>
<td class="b3"><span></span></td>
<td class="b3"><span>0禁刷新3个</span></td></tr>
<tr><td class="b3" height=20px><span>全图随机</span></td>
<td class="b3"><span>提示纸条铝</span></td>
<td class="b3"><span>特殊</span></td>
<td class="b3"><span>1/1</span></td>
<td class="b3"><span></span></td>
<td class="b3"><span>0禁刷新3个</span></td></tr>
<tr><td class="b3" height=20px><span>全图随机</span></td>
<td class="b3"><span>提示纸条硅</span></td>
<td class="b3"><span>特殊</span></td>
<td class="b3"><span>1/1</span></td>
<td class="b3"><span></span></td>
<td class="b3"><span>0禁刷新3个</span></td></tr>
<tr><td class="b3" height=20px><span>全图随机</span></td>
<td class="b3"><span>提示纸条磷</span></td>
<td class="b3"><span>特殊</span></td>
<td class="b3"><span>1/1</span></td>
<td class="b3"><span></span></td>
<td class="b3"><span>0禁刷新3个</span></td></tr>
<tr><td class="b3" height=20px><span>全图随机</span></td>
<td class="b3"><span>提示纸条铀</span></td>
<td class="b3"><span>特殊</span></td>
<td class="b3"><span>1/1</span></td>
<td class="b3"><span></span></td>
<td class="b3"><span>0禁刷新3个</span></td></tr>
<tr><td class="b3" height=20px><span>全图随机</span></td>
<td class="b3"><span>《殴系指南》</span></td> <td class="b3"><span>《殴系指南》</span></td>
<td class="b3"><span>技能书籍</span></td> <td class="b3"><span>技能书籍</span></td>
<td class="b3"><span>25/1</span></td> <td class="b3"><span>25/1</span></td>
...@@ -7375,4 +7195,10 @@ ...@@ -7375,4 +7195,10 @@
<td class="b3"><span>90/1</span></td> <td class="b3"><span>90/1</span></td>
<td class="b3"><span></span></td> <td class="b3"><span></span></td>
<td class="b3"><span>0禁刷新7个</span></td></tr> <td class="b3"><span>0禁刷新7个</span></td></tr>
<tr><td class="b3" height=20px><span>全图随机</span></td>
<td class="b3"><span>→【神器任意门】←</span></td>
<td class="b3"><span>特殊</span></td>
<td class="b3"><span>1/1</span></td>
<td class="b3"><span></span></td>
<td class="b3"><span>1禁刷新1个</span></td></tr>
</table></div><br> </table></div><br>
This diff is collapsed.
...@@ -5,11 +5,11 @@ ...@@ -5,11 +5,11 @@
<input type="radio" name="command" id="shop" value="shop"><a onclick=sl('shop'); href="javascript:void(0);" onmouseover="status=' ';return true;">返回列表</a><br><br> <input type="radio" name="command" id="shop" value="shop"><a onclick=sl('shop'); href="javascript:void(0);" onmouseover="status=' ';return true;">返回列表</a><br><br>
<!--{loop $itemdata $idata}--> <!--{loop $itemdata $idata}-->
<!--{if $idata['sid']}--> <!--{if $idata['sid']}-->
<a onclick=sl("$idata['sid']"); href="javascript:void(0);" onmouseover="status=' ';return true;"><input type="radio" name="command" id="$idata['sid']" value="$idata['sid']">$idata['item']/$idata['itmk_words']/$idata['itme']/$idata['itms']<!--{if $idata['itmsk_words']}-->/$idata['itmsk_words']<!--{/if}--> 【价:$idata['price'],数:$idata['num']】</a><br> <a onclick=sl("$idata['sid']"); href="javascript:void(0);" onmouseover="status=' ';return true;"><input type="radio" name="command" id="$idata['sid']" value="$idata['sid']">$idata['item_words']/$idata['itmk_words']/$idata['itme']/$idata['itms']<!--{if $idata['itmsk_words']}-->/$idata['itmsk_words']<!--{/if}--> 【价:$idata['price'],数:$idata['num']】</a><br>
<!--{/if}--> <!--{/if}-->
<!--{/loop}--> <!--{/loop}-->
<!--{if $shop==1||$shop==2||$shop==6||$shop==7||$shop==8||$shop==10||$shop==11||$shop==12}--> <!--{if $shop==1||$shop==2||$shop==6||$shop==7||$shop==8||$shop==10||$shop==11||$shop==12}-->
请输入购买数量:<input type="text" name="buynum" value="1" size="5" maxlength="5"> 请输入购买数量:<input type="number" name="buynum" value="1" min="1" max="1000">
<!--{else}--> <!--{else}-->
<input type="hidden" name="buynum" value="1"> <input type="hidden" name="buynum" value="1">
<!--{/if}--> <!--{/if}-->
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment