Commit 85b0e85d authored by hisuinohoshi's avatar hisuinohoshi

Update wtf

新增:
- 怪技能;
- 怪技能书;

变化:
- tooltip实现方法微调;
- shopitem,mapitem,maptrap表扩容;

修复:
- 「百战」无法正常使用的问题;

参展者
陷入了尸体迷恋之中,ta正打算挖出一具尸体和别人一起观赏。
这是因为心情不佳。
压倒骆驼的最后一根稻草:吃了生的尸体
parent 980fb95e
......@@ -564,6 +564,25 @@ $cskills = Array
'wepk+wep_kind' => "[:wepk:] == 'WG' || [:wepk:] == 'WJ' || [:wepk:] == 'WGK' || [:wepk:] == 'WDG' || [:wep_kind:] == 'G' || [:wep_kind:] == 'J'",
),
),
'tl_cstick' => Array
(
'name' => '抡尸',
'tags' => Array('passive'),
'desc' => '发现尸体时,可消耗<span class="red">[:ragecost:]</span>点怒气将尸体作为<span class="yellow">殴系武器</span>拔出。<br>
武器的<span class="yellow">效耐</span>取决于尸体的<span class="yellow">最大生命</span>与<span class="yellow">体力</span>,上限为<span class="red">[:limit:]</span>点。<br>
优秀的尸源有概率为武器附加<span class="yellow">冲击</span>与<span class="yellow">精英</span>属性',
'vars' => Array(
'ragecost' => 100,
'limit' => 2000,
'notype' => Array(88,92),//不能用来抡的NPC
),
'lockdesc' => Array(
'rage' => '怒气不足,需要<span class="red">100</span>点怒气才能使用',
),
'unlock' => Array(
'rage' => '[:rage:] > 100',
),
),
'inf_dizzy' => Array
(
'name' => '眩晕',
......
......@@ -957,6 +957,7 @@ $iteminfo = Array(//注意顺序,AB必须在A的前面,以此类推
'U' => '扫雷设备',
'V'=> '技能书籍',
'VV'=> '技能书籍',
'VS' => '技能书',
'WN' => '空手',#空手
'WGK' => '枪刃',#射+斩
'WCF' => '符札',#投+符
......@@ -1039,7 +1040,7 @@ $itemspkinfo = Array(
'^' => '背包',
);
$iteminfo_tooltip_desc = Array
$tps_names = Array
(
# 用于记录一些内容重复但来源不同的描述
# 不能改善性能,但是可以保护视力与腱鞘?……大概吧
......@@ -1059,7 +1060,7 @@ $iteminfo_tooltip_desc = Array
99 => Array('title'=>"……这、这是什么?!"),
);
$iteminfo_tooltip = Array
$tps_name = Array
(
# 强化道具
'钉' => 3, '钢钉' => 3, '艾莲娜的圣钉' => 3, '埃克法-冰凌-钉' => 3,
......@@ -1085,13 +1086,13 @@ $iteminfo_tooltip = Array
'「曳光」' => 1,'「人生重来箱」' => 1,'「菁英宅之怒」' => 1,'闭锁世界的冥神 L5' => 1,'铁兽式强袭机动兵装改牛头伯劳2 L5' => 1,
'防火龙·暗流体 L5' => 1,'前托枪管龙 L5' => 1,'电子界到临者@火灵天星 L6' => 1,'「活跃迎春曲」' => 1,'「飘落」' => 1,'「明动」' => 1,
'「正午高阳」' => 1,'神灭兵器-天霆号扼宙斯 ☆12' => 1,'「碧海船歌」' => 1,'「翼展」' => 1,'「安谧」' => 1,
'「午前许愿」' => 1,'神之圣剑' => 1,'「龙怒」' => 1,'「升天」' => 1,'「宁静」' => 1,'「清晨恩典」' => 1,'神之棍棒' => 1,
'「午前许愿」' => 1,'神之圣剑' => 1,'「金霜协奏曲」'=>1,'「龙怒」' => 1,'「升天」' => 1,'「宁静」' => 1,'「清晨恩典」' => 1,'神之棍棒' => 1,
# 福袋SSR
'随机数之神的棍棒' => 2,'随机数之神的圣剑' => 2,'随机数之神的泪水' => 2,
'随机数之神的神力' => 2,'随机数之神的震撼' => 2,'随机数之神的摄理' => 2,'随机数之神的恶戏' => 2,
);
$itemkinfo_tooltip = Array
$tps_ik = Array
(
'Ag' => Array('title' =>"可能带有同志属性",),
'Al' => Array('title' =>"可能带有热恋属性",),
......@@ -1149,7 +1150,7 @@ $itemkinfo_tooltip = Array
'ZA' => Array('class'=>'neonyellow', 'title'=>"这个物品中似乎含有让你可以独自脱离幻境的方法……",),
);
$itemspkinfo_tooltip = Array
$tps_isk = Array
(
'A' => Array('title' => "高概率将殴斩射投爆灵六系对你的伤害减半。",),//测试用
'a' => Array('title' => "高概率将毒火冻电乱音以及爆炸对你的伤害减半。并避免异常状态。",),//测试用
......
......@@ -111,6 +111,7 @@
10,3,300,0,《投系指南》,VC,30,1,,
10,3,300,0,《爆系指南》,VD,30,1,,
10,3,300,0,《灵系指南》,VF,30,1,,
10,10,4444,0,《黑暗兵法·素材复用之卷》,VS,1,1,tl_cstick,
10,10,3800,0,《小黄的收服特训》,X,1,1,,
10,10,7000,0,《寻星流奥义书》,VK,300,1,,
10,10,5500,0,《小黄的常磐之力》,VC,300,1,,
......
......@@ -41,10 +41,10 @@ DROP TABLE IF EXISTS bra_mapitem;
CREATE TABLE bra_mapitem (
iid mediumint unsigned NOT NULL auto_increment,
itm char(30) NOT NULL default '',
itmk char(5) not null default '',
itme mediumint unsigned NOT NULL default '0',
itms char(5) not null default '0',
itmsk char(5) not null default '',
itmk char(40) not null default '',
itme int(10) unsigned NOT NULL DEFAULT '0',
itms char(10) not null default '0',
itmsk char(40) not null default '',
pls tinyint unsigned not null default '0',
PRIMARY KEY (iid)
......@@ -59,10 +59,10 @@ DROP TABLE IF EXISTS bra_maptrap;
CREATE TABLE bra_maptrap (
tid mediumint unsigned NOT NULL auto_increment,
itm char(30) NOT NULL default '',
itmk char(5) not null default '',
itme smallint unsigned NOT NULL default '0',
itms char(5) not null default '0',
itmsk char(5) not null default '',
itmk char(40) not null default '',
itme int(10) unsigned NOT NULL DEFAULT '0',
itms char(10) not null default '0',
itmsk char(40) not null default '',
pls tinyint unsigned not null default '0',
PRIMARY KEY (tid)
......@@ -115,9 +115,9 @@ DROP TABLE IF EXISTS bra_itemdepot;
CREATE TABLE bra_itemdepot (
iid mediumint unsigned NOT NULL auto_increment,
itm varchar(30) NOT NULL default '',
itmk varchar(15) not null default '',
itmk varchar(40) not null default '',
itme int(10) unsigned NOT NULL default '0',
itms varchar(10) not null default '0',
itms char(10) not null default '0',
itmsk varchar(40) not null default '',
itmowner char(15) NOT NULL DEFAULT '',
itmpw char(5) NOT NULL DEFAULT '',
......
......@@ -10,10 +10,10 @@ CREATE TABLE bra_shopitem (
price smallint unsigned NOT NULL default '0',
area tinyint unsigned NOT NULL default '0',
item char(30) NOT NULL default '',
itmk char(5) NOT NULL default '',
itme smallint unsigned NOT NULL default '0',
itms char(5) NOT NULL default '0',
itmsk char(5) NOT NULL default '',
itmk char(40) not null default '',
itme int(10) unsigned NOT NULL DEFAULT '0',
itms char(10) not null default '0',
itmsk char(40) not null default '',
PRIMARY KEY (sid),
INDEX KIND (kind, area)
......
......@@ -62,14 +62,7 @@ if(filemtime($vnmixfile) > filemtime($writefile) ||filemtime($mixfile) > filemti
foreach($mixinfo as $mix){
if($mix['class'] !== 'hidden'){
//名字
$mix['result'][0] = parse_itm_desc($mix['result'][0],'m');
//类别
foreach($iteminfo as $info_key => $info_value){
if(strpos($mix['result'][1],$info_key)===0){
$mixitmk = parse_itm_desc($info_key,'k');
break;
}
}
$mix['result'][0] = parse_info_desc($mix['result'][0],'m');
//属性
$mixitmsk = '';
if(!empty($mix['result'][4]) && !is_numeric($mix['result'][4])){
......@@ -80,13 +73,22 @@ if(filemtime($vnmixfile) > filemtime($writefile) ||filemtime($mixfile) > filemti
}
}
if(!empty($mixitmsk)){$mixitmsk = substr($mixitmsk,0,-1);}*/
$mix_sk = get_itmsk_array($mix['result'][4]); $mixitmsk = '';
/*$mix_sk = get_itmsk_array($mix['result'][4]); $mixitmsk = '';
foreach($mix_sk as $sk_value)
{
if(!empty($mixitmsk)) $mixitmsk .= '+'.parse_itm_desc($sk_value,'sk');
else $mixitmsk = parse_itm_desc($sk_value,'sk');
}
}*/
$mixitmsk = parse_info_desc($mix['result'][4],'sk',$mix['result'][1]);
}
//类别
$mixitmk = parse_info_desc($mix['result'][1],'k');
/*foreach($iteminfo as $info_key => $info_value){
if(strpos($mix['result'][1],$info_key)===0){
$mixitmk = parse_itm_desc($info_key,'k');
break;
}
}*/
$mixitem[$mix['class']][] = array('stuff' => $mix['stuff'], 'result' => array($mix['result'][0],$mixitmk,$mix['result'][2],$mix['result'][3],$mixitmsk));
}
}
......@@ -166,24 +168,27 @@ if(filemtime($vnmixfile) > filemtime($writefile) ||filemtime($mixfile) > filemti
if($mix['class'] !== 'hidden')
{
//名字
$mix['result'][0] = parse_itm_desc($mix['result'][0],'m');
//类别
foreach($iteminfo as $info_key => $info_value){
if(strpos($mix['result'][1],$info_key)===0){
$mixitmk = parse_itm_desc($info_key,'k');
break;
}
}
//$mix['result'][0] = parse_itm_desc($mix['result'][0],'m');
$mix['result'][0] = parse_info_desc($mix['result'][0],'m');
//属性
$mixitmsk = '';
if(!empty($mix['result'][4]) && !is_numeric($mix['result'][4])){
$mix_sk = get_itmsk_array($mix['result'][4]); $mixitmsk = '';
/*$mix_sk = get_itmsk_array($mix['result'][4]); $mixitmsk = '';
foreach($mix_sk as $sk_value)
{
if(!empty($mixitmsk)) $mixitmsk .= '+'.parse_itm_desc($sk_value,'sk');
else $mixitmsk = parse_itm_desc($sk_value,'sk');
}
}*/
$mixitmsk = parse_info_desc($mix['result'][4],'sk',$mix['result'][1]);
}
//类别
$mixitmk = parse_info_desc($mix['result'][1],'k');
/*foreach($iteminfo as $info_key => $info_value){
if(strpos($mix['result'][1],$info_key)===0){
$mixitmk = parse_itm_desc($info_key,'k');
break;
}
}*/
$vmixitem[$mix['class']][] = array('name' => $mix['name'], 'stuff' => $mix['stuff'], 'result' => array($mix['result'][0],$mixitmk,$mix['result'][2],$mix['result'][3],$mixitmsk));
}
}
......
......@@ -34,13 +34,14 @@ if(file_exists($cache_file))
$sk_arr = Array();
if(!empty($vn_info[4]))
{
$sk_arr = get_itmsk_array($vn_info[4]);
//$sk_arr = get_itmsk_array($vn_info[4]);
$temp_mixinfo[$vn_key][$vn_type][4] = '';
foreach($sk_arr as $sk_value)
$temp_mixinfo[$vn_key][$vn_type][4] = parse_info_desc($vn_info[4],'sk',$vn_info[1]);
/*foreach($sk_arr as $sk_value)
{
if(!empty($temp_mixinfo[$vn_key][$vn_type][4])) $temp_mixinfo[$vn_key][$vn_type][4] .= '+'.parse_itm_desc($sk_value,'sk');
else $temp_mixinfo[$vn_key][$vn_type][4] = parse_itm_desc($sk_value,'sk');
}
}*/
}
}
}
......
......@@ -42,52 +42,42 @@ function init_profile(){
foreach (Array('wep','arb','arh','ara','arf','art','itm0','itm1','itm2','itm3','itm4','itm5','itm6') as $value)
{
global ${$value.'_words'};
${$value.'_words'} = parse_itm_desc(${$value},'m');
}
foreach (Array('wepk','arbk','arhk','arak','arfk','artk','itmk0','itmk1','itmk2','itmk3','itmk4','itmk5','itmk6') as $k_value) {
if(${$k_value})
if(strpos($value,'itm')!==false)
{
${$k_value.'_words'} = '';
foreach($iteminfo as $info_key => $info_value)
{
if(strpos(${$k_value},$info_key)===0){
${$k_value.'_words'} = parse_itm_desc($info_key,'k');
break;
}
}
} else {
${$k_value.'_words'} = '';
$k_value = str_replace('itm','itmk',$value);
$s_value = str_replace('itm','itms',$value);
$sk_value = str_replace('itm','itmsk',$value);
}
}
foreach (Array('wepsk','arbsk','arhsk','arask','arfsk','artsk','itmsk0','itmsk1','itmsk2','itmsk3','itmsk4','itmsk5','itmsk6') as $sk_value) {
if(${$sk_value} && is_numeric(${$sk_value}) === false){
${$sk_value.'_words'} = '';
//取我数组斧来
$tmpsk = get_itmsk_array(${$sk_value});
if(count($tmpsk)>3)
else
{
$k_value = $value.'k';
$s_value = $value.'s';
$sk_value = $value.'sk';
}
global $$s_value;
if(!empty($$s_value))
{
global ${$value.'_words'};
# 初始化名称样式
${$value.'_words'} = parse_info_desc($$value,'m');
# 初始化类别样式
if(${$k_value})
{
${$k_value.'_words'} = parse_info_desc($$k_value,'k');
}
else
{
//在装备、道具栏内的道具超过3个属性时,显示为+...+的缩写……不然属性多起来太丑了!!
${$sk_value.'_words'} = parse_itm_desc($tmpsk,'sk',1);
${$k_value.'_words'} = '';
}
# 初始化属性样式
if(${$sk_value} && is_numeric(${$sk_value}) === false)
{
${$sk_value.'_words'} = parse_info_desc($$sk_value,'sk',$$k_value,1);
}
else
{
foreach($tmpsk as $sk)
{
if(!empty(${$sk_value.'_words'}))
{
${$sk_value.'_words'} .= "+".parse_itm_desc($sk,'sk');
}
else
{
${$sk_value.'_words'} = parse_itm_desc($sk,'sk');
}
}
${$sk_value.'_words'} = $nospk;
}
} else {
${$sk_value.'_words'} =$nospk;
}
}
......@@ -224,18 +214,18 @@ function init_battle($ismeet = 0){
//在战斗界面中加载敌我双方武器tooltip
global $wep_words,$wepk_words,$w_wep_words,$w_wepk_words;
$wep_words = parse_itm_desc($wep,'m'); $wepk_words = parse_itm_desc($wepk,'k');
$wep_words = parse_info_desc($wep,'m'); $wepk_words = parse_info_desc($wepk,'k');
if(!$fog||$ismeet) {
//非雾天显示敌人武器情报
$w_wep_words = parse_itm_desc($w_wep,'m');
$w_wepk_words = parse_itm_desc($w_wepk,'k');
$w_wep_words = parse_info_desc($w_wep,'m');
$w_wepk_words = parse_info_desc($w_wepk,'k');
//如果有的话 初始化第三方武器情报
if(isset($n_type))
{
global $n_wep_words,$n_wepk_words,$n_iconImg;
$n_iconImg = $n_type ? 'n_'.$n_icon.'.gif' : $n_gd.'_'.$n_icon.'.gif';
$n_wep_words = parse_itm_desc($n_wep,'m');
$n_wepk_words = parse_itm_desc($n_wepk,'k');
$n_wep_words = parse_info_desc($n_wep,'m');
$n_wepk_words = parse_info_desc($n_wepk,'k');
}
$w_sNoinfo = "$typeinfo[$w_type]({$sexinfo[$w_gd]}{$w_sNo}号)";
$w_i = $w_type > 0 ? 'n' : $w_gd;
......@@ -364,8 +354,8 @@ function init_rev_battle($ismeet = 0)
${$p.'wepestate'} = "$wepeinfo[0]";
}
//更新武器名、武器类别情报
${$p.'wep_words'} = parse_itm_desc(${$p.'wep'},'m');
${$p.'wepk_words'} = parse_itm_desc(${$p.'wepk'},'k');
${$p.'wep_words'} = parse_info_desc(${$p.'wep'},'m');
${$p.'wepk_words'} = parse_info_desc(${$p.'wepk'},'k');
//更新编号情报
${$p.'sNoinfo'} = $typeinfo[${$p.'type'}]."(".$sexinfo[${$p.'gd'}].${$p.'sNo'}."号)";
//更新头像情报
......
......@@ -112,7 +112,46 @@ function findcorpse(&$w_pdata){
{
$main = 'battle';
$log .= '你发现了<span class="red">'.$w_name.'</span>的尸体!<br>';
foreach (Array('wep','arb','arh','ara','arf','art','itm0','itm1','itm2','itm3','itm4','itm5','itm6') as $w_value)
foreach (Array('wep','arb','arh','ara','arf','art','itm0','itm1','itm2','itm3','itm4','itm5','itm6') as $value)
{
$value = 'w_'.$value;
if(strpos($value,'itm')!==false)
{
$k_value = str_replace('itm','itmk',$value);
$s_value = str_replace('itm','itms',$value);
$sk_value = str_replace('itm','itmsk',$value);
}
else
{
$k_value = $value.'k';
$s_value = $value.'s';
$sk_value = $value.'sk';
}
if(!empty($$s_value))
{
# 初始化名称样式
${$value.'_words'} = parse_info_desc($$value,'m');
# 初始化类别样式
if(${$k_value})
{
${$k_value.'_words'} = parse_info_desc($$k_value,'k');
}
else
{
${$k_value.'_words'} = '';
}
# 初始化属性样式
if(${$sk_value} && is_numeric(${$sk_value}) === false)
{
${$sk_value.'_words'} = parse_info_desc($$sk_value,'sk',$$k_value,1);
}
else
{
${$sk_value.'_words'} = $nospk;
}
}
}
/*foreach (Array('wep','arb','arh','ara','arf','art','itm0','itm1','itm2','itm3','itm4','itm5','itm6') as $w_value)
{
if(isset(${$w_value})) ${$w_value} = parse_itm_desc(${$w_value},'m');
}
......@@ -136,13 +175,19 @@ function findcorpse(&$w_pdata){
${$w_sk_value.'_words'} .= parse_itm_desc($sk,'sk');
}
}
}
}*/
include_once GAME_ROOT.'./include/game/depot.func.php';
$loot_depot_flag = 0;
if(in_array($w_type,$can_lootdepot_type))
{
$loot_depot_flag = depot_getlist($w_name,$w_type) ? 1 : 0;
}
global $pdata;
include_once GAME_ROOT.'./include/game/revclubskills.func.php';
if(!check_skill_unlock('tl_cstick',$pdata))
{
$cstick_flag = in_array($w_type,get_skillvars('tl_cstick','notype')) ? 0 : 1;
}
include template('corpse');
$cmd = ob_get_contents();
ob_clean();
......
......@@ -600,14 +600,37 @@ function itemuse($itmn) {
}
$wf += $vefct; //$itme;
$wsname = "灵击熟练度";
} elseif (strpos ( $itmk, 'VS' ) === 0) {
global $cskills,$clbpara;
if(!empty($itmsk) && isset($cskills[$itmsk]))
{
include_once GAME_ROOT.'./include/game/revclubskills.func.php';
$flag = getclubskill($itmsk,$clbpara);
if($flag)
{
$log.="哇!没想到这本书里竟然介绍了<span class='yellow'>「{$cskills[$itmsk]['name']}」</span>的原理!<br>获得了技能<span class='yellow'>「{$cskills[$itmsk]['name']}」</span>!<br>你心满意足地把<span class='red'>{$itm}</span>吃进了肚里。<br>";
addnews($now,'getsk_'.$itmsk,$name,$itm);
}
else
{
$log.="什么嘛!原来里面都是些你看过的东西了,你没有从书中学到任何新东西。<br>你一怒之下把这本破书撕了个稀巴烂!<br>";
}
}
else
{
$log.="但是你横看竖看,也弄不明白作者到底想表达什么!<br>你一怒之下把这本破书撕了个稀巴烂!<br>";
}
}
if ($vefct > 0) {
$log .= "嗯,有所收获。<br>你的{$wsname}提高了<span class=\"yellow\">$vefct</span>点!<br>";
} elseif ($vefct == 0) {
$log .= "对你来说书里的内容过于简单了。<br>你的熟练度没有任何提升。<br>";
} else {
$vefct = - $vefct;
$log .= "对你来说书里的内容过于简单了。<br>而且由于盲目相信书上的知识,你反而被编写者的纰漏所误导了!<br>你的{$wsname}下降了<span class=\"red\">$vefct</span>点!<br>";
if(isset($vefct))
{
if ($vefct > 0) {
$log .= "嗯,有所收获。<br>你的{$wsname}提高了<span class=\"yellow\">$vefct</span>点!<br>";
} elseif ($vefct == 0) {
$log .= "对你来说书里的内容过于简单了。<br>你的熟练度没有任何提升。<br>";
} else {
$vefct = - $vefct;
$log .= "对你来说书里的内容过于简单了。<br>而且由于盲目相信书上的知识,你反而被编写者的纰漏所误导了!<br>你的{$wsname}下降了<span class=\"red\">$vefct</span>点!<br>";
}
}
if ($itms != $nosta) {
$itms --;
......
......@@ -1069,6 +1069,15 @@ function getcorpse($item){
return;
}
if($item == 'cstick')
{
include_once GAME_ROOT.'./include/game/revclubskills_extra.func.php';
skill_tl_cstick_act($edata);
$action = '';
$mode = 'command';
return;
}
if($item == 'loot_depot')
{
global $name,$type;
......
......@@ -58,95 +58,37 @@ function get_npc_helpinfo($nlist,$tooltip=1)
}
if(isset($snpc['club'])) $snpc['club'] = $snpc['club']==99 ? '第一形态' : $clubinfo[$snpc['club']];
//合并装备
foreach(Array('wep','arb','arh','ara','arf','art') as $t1)
//格式化装备、道具
foreach (Array('wep','arb','arh','ara','arf','art','itm0','itm1','itm2','itm3','itm4','itm5','itm6') as $value)
{
foreach(Array('','k','e','s','sk') as $t2)
if(strpos($value,'itm')!==false)
{
if(!empty($snpc[$t1.$t2]))
{
//为装备名添加tooltip效果
if($t2 == '' && $tooltip)
{
$snpc[$t1.$t2] = parse_itm_desc($snpc[$t1.$t2],'m');
}
//为装备类别添加tooltip效果
elseif($t2 == 'k' && $tooltip)
{
foreach($iteminfo as $info_key => $info_value)
{
if(strpos($snpc[$t1.$t2],$info_key)===0)
{
$snpc[$t1.$t2] = parse_itm_desc($info_key,'k');
break;
}
}
}
//为装备属性添加tooltip效果
elseif($t2 == 'sk' && $tooltip)
{
$tmpsk = get_itmsk_array($snpc[$t1.$t2]);
foreach($tmpsk as $sk)
{
if(!empty($snpc[$t1.$t2.'_words']))
{
$snpc[$t1.$t2.'_words'] .= "+".parse_itm_desc($sk,'sk');
}
else
{
$snpc[$t1.$t2.'_words'] = parse_itm_desc($sk,'sk');
}
}
}
}
else
{
$snpc[$t1.$t2] = '-';
}
$k_value = str_replace('itm','itmk',$value);
$e_value = str_replace('itm','itme',$value);
$s_value = str_replace('itm','itms',$value);
$sk_value = str_replace('itm','itmsk',$value);
}
}
//合并道具名
for($ni=0;$ni<=6;$ni++)
{
foreach(Array('','k','e','s','sk') as $t2)
else
{
$e_value = $value.'e';
$k_value = $value.'k';
$s_value = $value.'s';
$sk_value = $value.'sk';
}
if(!empty($snpc[$s_value]))
{
if(!empty($snpc['itm'.$t2.$ni]))
//添加tooltip效果
if($tooltip)
{
//为装备名添加tooltip效果
if($t2 == '' && $tooltip)
{
$snpc['itm'.$t2.$ni] = parse_itm_desc($snpc['itm'.$t2.$ni],'m');
}
//为装备类别添加tooltip效果
elseif($t2 == 'k' && $tooltip)
{
foreach($iteminfo as $info_key => $info_value)
{
if(strpos($snpc['itm'.$t2.$ni],$info_key)===0)
{
$snpc['itm'.$t2.$ni] = parse_itm_desc($info_key,'k');
break;
}
}
}
//为装备属性添加tooltip效果
elseif($t2 == 'sk' && $tooltip)
{
$tmpsk = get_itmsk_array($snpc['itm'.$t2.$ni]);
foreach($tmpsk as $sk)
{
if(!empty($snpc['itm'.$t2.$ni.'_words']))
{
$snpc['itm'.$t2.$ni.'_words'] .= "+".parse_itm_desc($sk,'sk');
}
else
{
$snpc['itm'.$t2.$ni.'_words'] = parse_itm_desc($sk,'sk');
}
}
}
if(!empty($snpc[$value])) $snpc[$value] = parse_info_desc($snpc[$value],'m');
if(!empty($snpc[$sk_value])) $snpc[$sk_value.'_words'] = parse_info_desc($snpc[$sk_value],'sk',$snpc[$k_value]);
if(!empty($snpc[$k_value])) $snpc[$k_value] = parse_info_desc($snpc[$k_value],'k');
}
}
else
{
$snpc[$t1.$t2] = '-';
}
}
$tnlist[$i][$tsub][$n] = $snpc;
unset($snpc);
......
......@@ -32,8 +32,9 @@
if($ltkey == 'lasttimes' || $ltkey == 'lastturns') $para[$ltkey][$sk] = $lt;
}
}
return 1;
}
return;
return 0;
}
# 失去指定技能 $sk:技能名;$para:$clbpara
......@@ -313,7 +314,7 @@
$data['clbpara'] = get_clbpara($data['clbpara']);
if(!in_array($sk,$data['clbpara']['skill']))
{
return 1;
return "技能未解锁!<br>";
}
if(!empty($cskills[$sk]['unlock']))
{
......
......@@ -12,7 +12,7 @@
function skill_c1_veteran_act($choice)
{
global $log,$pdata,$cskills,$club,$clbpara,$itemspkinfo;
if(!check_skill_unlock($sk,$pdata))
if(!check_skill_unlock('c1_veteran',$pdata))
{
$c_arr = get_skillvars('c1_veteran','defkind');
$cvar = &$clbpara['skillpara']['c1_veteran']['choice'];
......@@ -27,7 +27,7 @@
return;
}
$cvar = $choice;
$log .= "「百战」的防御属性变更为{$itemspkinfo[$choice]}<br>";
$log .= "防御属性已变更为<span class='yellow'>{$itemspkinfo[$choice]}</span>!<br>";
}
else
{
......@@ -57,4 +57,62 @@
return;
}
# 尸体发火!
function skill_tl_cstick_act(&$edata)
{
global $log,$pdata,$cskills;
include_once GAME_ROOT.'./include/game/revclubskills.func.php';
$lock = check_skill_unlock('tl_cstick',$pdata);
if(!$lock)
{
# 扣除怒气
$pdata['rage'] -= get_skillvars('tl_cstick','ragecost');
addnews($now,'bsk_tl_cstick',$pdata['name'],$edata['name']);
# 炼到了不该炼的尸体
if(in_array($edata['type'],get_skillvars('tl_cstick','notype')))
{
$log .= "仿佛觉察到了你那邪恶的念头,你刚一伸出手,{$edata['name']}的尸体便化作尘埃随风散去了……<br>不知为何,你感到有些惭愧。<br>";
destory_corpse($edata);
$pdata['rp'] += 333;
return;
}
# 开抡!
$log .= "你干脆利落地把<span class='red'>{$edata['name']}</span>从地上拽了起来!然后卯足力气,在空中挥舞了两下。<br>……<br>";
$pdata['itm0'] = "{$edata['name']}尸体模样的棍棒";
$pdata['itmk0'] = 'WP';
$pdata['itme0'] = round($edata['msp']);
$pdata['itms0'] = round($edata['mhp']);
$dice = diceroll(99);
$N_obbs = pow($edata['lvl'],1.3);
$z_obbs = !$edata['type'] ? pow($edata['lvl'],1.3) : pow($edata['lvl'],1.15);
if($dice < $N_obbs)
{
$pdata['itmsk0'] .= 'N';
$log .= "不错!份量不轻不重刚刚好!<br>";
}
if($dice < $z_obbs)
{
$pdata['itmsk0'] .= 'Z';
$log .= "越是挥舞,越觉趁手!这尸体仿佛死来就是为你准备的!<br>哇,这下真正捡到宝了!<br>";
}
if(empty($pdata['itmsk0']))
{
$log .= "哎呀……好像这具尸体和你的相性不是很好。但是无所谓啦!<br>";
}
# 出生啊!
$max_rp_dice = $pdata['itme0']+$pdata['itms0'] > 300 ? $pdata['itme0']+$pdata['itms0'] : 300;
$rp_dice = rand(300,$max_rp_dice);
$pdata['rp'] += $rp_dice;
# 做成棍了就没有尸体了
destory_corpse($edata);
include_once GAME_ROOT.'./include/game/itemmain.func.php';
itemget();
}
else
{
$log .= isset($cskills['tl_cstick']['lockdesc'][$lock]) ? $cskills['tl_cstick']['lockdesc'][$lock] : $lock;
}
return;
}
?>
......@@ -492,23 +492,25 @@ function shoplist($sn,$getlist=NULL) {
$itemdata[$i]['price']= $club == 11 ? round($itemlist['price']*0.75) : $itemlist['price'];
$itemdata[$i]['area']=$itemlist['area'];
$itemdata[$i]['item']=$itemlist['item'];
$itemdata[$i]['item_words']= parse_itm_desc($itemdata[$i]['item'],'m');
$itemdata[$i]['item_words']= parse_info_desc($itemdata[$i]['item'],'m');
$itemdata[$i]['itme']=$itemlist['itme'];
$itemdata[$i]['itms']=$itemlist['itms'];
//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(isset($getlist)) $itemdata[$i]['itmk'] = $info_value;
$itemdata[$i]['itmk_words'] = parse_itm_desc($info_key,'k');
break;
}
}
}*/
$itemdata[$i]['itmk_words'] = parse_info_desc($itemlist['itmk'],'k');
$itemdata[$i]['itmsk_words'] = '';
if($itemlist['itmsk'] && ! is_numeric($itemlist['itmsk'])){
if(!isset($getlist))
{
$tmp_sk = get_itmsk_array($itemlist['itmsk']);
foreach($tmp_sk as $sk) $itemdata[$i]['itmsk_words'].= parse_itm_desc($sk,'sk');
$itemdata[$i]['itmsk_words'] = parse_info_desc($itemlist['itmsk'],'sk',$itemlist['itmk']);
//$tmp_sk = get_itmsk_array($itemlist['itmsk']);
//foreach($tmp_sk as $sk) $itemdata[$i]['itmsk_words'].= parse_itm_desc($sk,'sk');
}
else
{
......
......@@ -566,25 +566,125 @@ function player_format_with_db_structure($data){
}
return $ndata;
}
function parse_info_desc($info,$type,$vars='',$short=0)
{
global $iteminfo,$itemspkinfo,$cskills;
global $tps_name,$tps_names,$tps_ik,$tps_isk;
# 处理名字
if($type == 'm')
{
$tinfo = preg_replace('/锋利的|电气|毒性|\[\+.*\]|-改/', '', $info);
if(isset($tps_name[$tinfo]) && isset($tps_names[$tps_name[$tinfo]]))
{
$ts = $tps_names[$tps_name[$tinfo]];
$tinfo_f = isset($ts['class']) ? "class=\"{$ts['class']}\"" : '';
$tinfo_tp = isset($ts['title']) ? "tooltip=\"{$ts['title']}\"" : '';
return "<span {$tinfo_tp} {$tinfo_f}>{$tinfo}</span>";
}
elseif(isset($tps_name[$tinfo]))
{
$tinfo_f = isset($tps_name[$tinfo]['class']) ? "class=\"{$tps_name[$tinfo]['class']}\"" : '';
$tinfo_tp = isset($tps_name[$tinfo]['title']) ? "tooltip=\"{$tps_name[$tinfo]['title']}\"" : '';
return "<span {$tinfo_tp} {$tinfo_f}>{$info}</span>";
}
return $info;
}
# 处理类别
if($type == 'k')
{
foreach($iteminfo as $info_key => $info_value)
{
if(strpos($info,$info_key)===0)
{
$v_info = $info_key;
break;
}
}
# 类别不存在样式或提示时,用大类尝试一下
if(!isset($tps_ik[$info])) $info = $v_info;
$info_f = isset($tps_ik[$info]['class']) ? "class=\"{$tps_ik[$info]['class']}\"" : '';
$info_tp = isset($tps_ik[$info]['title']) ? "tooltip=\"{$tps_ik[$info]['title']}\"" : '';
if(!isset($iteminfo[$info])) $info = $v_info;
return "<span {$info_tp} {$info_f}>{$iteminfo[$info]}</span>";
}
# 处理属性
if($type == 'sk')
{
$ret = '-^-';
# 处理该数量以上的属性时,将属性格式变为+...+的缩写
$short_nums = 4;
# 技能书特殊处理
if($vars == 'VS')
{
if(!empty($info) && isset($cskills[$info]))
{
$sk = $cskills[$info]; $sknm = $cskills[$info]['name'];
return "<span tooltip=\"阅读后可习得技能「{$sknm}\">知识</span>";
}
return "--";
}
# 正常处理属性
else
{
# 数组化
if(!is_array($info)) $info = get_itmsk_array($info);
# 计数
$sk_max = count($info); $sk_nums = 0;
$sk_info = '';
foreach($info as $sk)
{
$csk = $itemspkinfo[$sk];
# 检查属性有没有特殊样式
if(isset($tps_isk[$sk]['class'])) $csk = "<span class=\"".$tps_isk[$sk]['class']."\">".$csk."</span>";
# 将属性加入显示队列
$sk_info .= $csk;
# 如果不是最后一个属性 显示一个 + 号
if($sk_nums<$sk_max-1) $sk_info .= '+';
# 检查属性有没有tooltip
if(isset($tps_isk[$sk]['title']))
{
if($sk_max > 1)
{
$sk_tp .= "【{$itemspkinfo[$sk]}】".$tps_isk[$sk]['title'];
if($sk_nums<$sk_max-1) $sk_tp .= "\r";
}
else
{
$sk_tp = $tps_isk[$sk]['title'];
}
}
$sk_nums++;
}
if(!empty($sk_info)) $ret = $sk_info;
if($sk_max > $short_nums && $short) $ret = $itemspkinfo[$info[0]]."+...+".$itemspkinfo[end($info)];
if(!empty($sk_tp))
{
$ret = "<span tooltip=\"{$sk_tp}\">{$ret}</span>";
}
}
return $ret;
}
return $info;
}
//为显示在主界面、尸体发现界面、游戏帮助界面的道具名、道具类、道具属性添加额外描述
//传入$n=道具名/类/属性;$t='m'(使用名称数组)/'k'(类别)/'sk'(属性);$short=1(传入的$n为数组情况下才有效,缩写属性);$class(如果传入的$n没有匹配的样式,则应用该样式)
function parse_itm_desc($n,$t,$short=0,$c=NULL)
function parse_itm_desc($n,$t,$s=0,$c=NULL)
{
global $iteminfo,$itemspkinfo;
//我再也不敢把变量名起的又臭又长了
global $iteminfo_tooltip,$itemkinfo_tooltip,$itemspkinfo_tooltip,$iteminfo_tooltip_desc;
global $iteminfo,$itemspkinfo,$cskills;
global $tps_name,$tps_ik,$tps_isk,$tps_names;
$span = "<span "; $p1 = "tooltip=\""; $p2 = "class=\""; $ret1 = ''; $ret2 = ''; $ret = '';
switch($t)
{
//处理类别
case $t=='k':
if(isset($itemkinfo_tooltip[$n]['title'])) $ret1 = $itemkinfo_tooltip[$n]['title']."\"";
if(isset($itemkinfo_tooltip[$n]['class'])) $ret2 = $itemkinfo_tooltip[$n]['class']."\"";
if(isset($tps_ik[$n]['title'])) $ret1 = $tps_ik[$n]['title']."\"";
if(isset($tps_ik[$n]['class'])) $ret2 = $tps_ik[$n]['class']."\"";
$n = $iteminfo[$n];
break;
//处理属性
case $t=='sk':
//如果传入的n为数组,且开启缩写模式,则输出一段缩写
if($short && is_array($n) && count($n)>1)
{
$sk1 = $itemspkinfo[current($n)]; $sk2 = $itemspkinfo[end($n)]; $skn = '';
......@@ -597,25 +697,25 @@ function parse_itm_desc($n,$t,$short=0,$c=NULL)
}
else
{
if(isset($itemspkinfo_tooltip[$n]['title'])) $ret1= $itemspkinfo_tooltip[$n]['title']."\"";
if(isset($itemspkinfo_tooltip[$n]['class'])) $ret2= $itemspkinfo_tooltip[$n]['class']."\"";
if(isset($tps_isk[$n]['title'])) $ret1= $tps_isk[$n]['title']."\"";
if(isset($tps_isk[$n]['class'])) $ret2= $tps_isk[$n]['class']."\"";
$n = $itemspkinfo[$n];
}
break;
//处理名字
case $t=='m':
$filter_n = preg_replace('/锋利的|电气|毒性|\[.*\]|-改/', '', $n);
if(isset($iteminfo_tooltip[$filter_n]))
$fn = preg_replace('/锋利的|电气|毒性|\[.*\]|-改/', '', $n);
if(isset($tps_name[$fn]))
{
if(is_array($iteminfo_tooltip[$filter_n]))
if(is_array($tps_name[$fn]))
{
if(isset($iteminfo_tooltip[$filter_n]['title'])) $ret1= $iteminfo_tooltip[$filter_n]['title']."\"";
if(isset($iteminfo_tooltip[$filter_n]['class'])) $ret2= $iteminfo_tooltip[$filter_n]['class']."\"";
if(isset($tps_name[$fn]['title'])) $ret1= $tps_name[$fn]['title']."\"";
if(isset($tps_name[$fn]['class'])) $ret2= $tps_name[$fn]['class']."\"";
}
elseif(isset($iteminfo_tooltip_desc[$iteminfo_tooltip[$filter_n]]))
elseif(isset($tps_names[$tps_name[$fn]]))
{ //使用可复用描述 越来越离谱了
if(isset($iteminfo_tooltip_desc[$iteminfo_tooltip[$filter_n]]['title'])) $ret1= $iteminfo_tooltip_desc[$iteminfo_tooltip[$filter_n]]['title']."\"";
if(isset($iteminfo_tooltip_desc[$iteminfo_tooltip[$filter_n]]['class'])) $ret2= $iteminfo_tooltip_desc[$iteminfo_tooltip[$filter_n]]['class']."\"";
if(isset($tps_names[$tps_name[$fn]]['title'])) $ret1= $tps_names[$tps_name[$fn]]['title']."\"";
if(isset($tps_names[$tps_name[$fn]]['class'])) $ret2= $tps_names[$tps_name[$fn]]['class']."\"";
}
}
break;
......
......@@ -34,12 +34,12 @@ function nparse_news($start = 0, $range = 0 ){//$type = '') {
//登记非功能性地点信息时合并隐藏地点 为什么会有两个news.func.php???
foreach($hplsinfo as $hgroup=>$hpls) $plsinfo += $hpls;
//死法(除DN外):道具名登记在$d上;第四个参数:没有检查到特殊样式的给一个红色
if(strpos($news,'death')!==false && $news!=='death28' && isset($d)) $d = parse_itm_desc($d,'m',0,"red");
//死法(除DN外):道具名登记在$d上;
if(strpos($news,'death')!==false && $news!=='death28' && isset($d)) $d = parse_info_desc($d,'m');
//赠送道具、吃到毒补给、陷阱、改变天气、强化武器、唱歌、打开礼物盒:道具名登记在$c上;
if((strpos($news,'senditem')!==false||strpos($news,'poison')!==false||strpos($news,'trap')!==false||strpos($news,'wth')!==false||strpos($news,'newwep')!==false||strpos($news,'song')!==false||strpos($news,'present')!==false) && isset($c)) $c = parse_itm_desc($c,'m');
if((strpos($news,'senditem')!==false||strpos($news,'poison')!==false||strpos($news,'trap')!==false||strpos($news,'wth')!==false||strpos($news,'newwep')!==false||strpos($news,'song')!==false||strpos($news,'present')!==false) && isset($c)) $c = parse_info_desc($c,'m');
//合成、使用死斗卡、使用仓库:道具名登记在$b上;
if((strpos($news,'mix')!==false||strpos($news,'duelkey')!==false||strpos($news,'depot')===0) && isset($b)) $b = parse_itm_desc($b,'m');
if((strpos($news,'mix')!==false||strpos($news,'duelkey')!==false||strpos($news,'depot')===0) && isset($b)) $b = parse_info_desc($b,'m');
//新PC加入战场 格式化nick
//卧槽这可怎么搞……只能脏一把了
......@@ -116,17 +116,17 @@ function nparse_news($start = 0, $range = 0 ){//$type = '') {
} elseif($news == 'death20') {
$newsinfo .= "<li>{$hour}{$min}{$sec}秒,<span class=\"yellow\">$a</span>被<span class=\"yellow\">$c</span>用<span class=\"red\">$nowep</span>击飞";
} elseif($news == 'death21') {
$newsinfo .= "<li>{$hour}{$min}{$sec}秒,<span class=\"yellow\">$a</span>被<span class=\"yellow\">$c</span>使用{$d}殴打致死";
$newsinfo .= "<li>{$hour}{$min}{$sec}秒,<span class=\"yellow\">$a</span>被<span class=\"yellow\">$c</span>使用<span class=\"red\">{$d}</span>殴打致死";
} elseif($news == 'death22') {
$newsinfo .= "<li>{$hour}{$min}{$sec}秒,<span class=\"yellow\">$a</span>被<span class=\"yellow\">$c</span>使用{$d}斩杀";
$newsinfo .= "<li>{$hour}{$min}{$sec}秒,<span class=\"yellow\">$a</span>被<span class=\"yellow\">$c</span>使用<span class=\"red\">{$d}</span>斩杀";
} elseif($news == 'death23') {
$newsinfo .= "<li>{$hour}{$min}{$sec}秒,<span class=\"yellow\">$a</span>被<span class=\"yellow\">$c</span>使用{$d}射杀";
$newsinfo .= "<li>{$hour}{$min}{$sec}秒,<span class=\"yellow\">$a</span>被<span class=\"yellow\">$c</span>使用<span class=\"red\">{$d}</span>射杀";
} elseif($news == 'death24') {
$newsinfo .= "<li>{$hour}{$min}{$sec}秒,<span class=\"yellow\">$a</span>被<span class=\"yellow\">$c</span>投掷{$d}致死";
$newsinfo .= "<li>{$hour}{$min}{$sec}秒,<span class=\"yellow\">$a</span>被<span class=\"yellow\">$c</span>投掷<span class=\"red\">{$d}</span>致死";
} elseif($news == 'death25') {
$newsinfo .= "<li>{$hour}{$min}{$sec}秒,<span class=\"yellow\">$a</span>被<span class=\"yellow\">$c</span>埋设{$d}伏击炸死";
$newsinfo .= "<li>{$hour}{$min}{$sec}秒,<span class=\"yellow\">$a</span>被<span class=\"yellow\">$c</span>埋设<span class=\"red\">{$d}</span>伏击炸死";
} elseif($news == 'death29') {
$newsinfo .= "<li>{$hour}{$min}{$sec}秒,<span class=\"yellow\">$a</span>被<span class=\"yellow\">$c</span>发动{$d}以灵力杀死";
$newsinfo .= "<li>{$hour}{$min}{$sec}秒,<span class=\"yellow\">$a</span>被<span class=\"yellow\">$c</span>发动<span class=\"red\">{$d}</span>以灵力杀死";
} elseif($news == 'death39') {
$newsinfo .= "<li>{$hour}{$min}{$sec}秒,<span class=\"yellow\">$a</span>在与<span class=\"yellow\">$c</span>的战斗中因<span class=\"red\">武器反噬</span>意外身亡";
} elseif($news == 'death26') {
......@@ -319,6 +319,10 @@ function nparse_news($start = 0, $range = 0 ){//$type = '') {
$bsk = substr($news,4);
$bname = $cskills[$bsk]['name'];
$newsinfo .= "<li>{$hour}{$min}{$sec}秒,<span class=\"clan\">{$a}{$b}发动了技能<span class=\"yellow\">「{$bname}」</span>!</span><br>\n";
} elseif(strpos($news,'getsk_')===0) {
$bsk = substr($news,6);
$bname = $cskills[$bsk]['name'];
$newsinfo .= "<li>{$hour}{$min}{$sec}秒,<span class=\"yellow\">{$a}通过翻阅{$b}学会了技能<span class=\"lime\">「{$bname}」</span>!</span><br>\n";
} else {
$newsinfo .= "<li>$time,$news,$a,$b,$c,$d<br>\n";
}
......
......@@ -5,6 +5,9 @@
<!--{elseif $allow_destory_corpse && !in_array($w_type,$no_destory_corpse_type)}-->
<input type="radio" name="command" id="destory" value="destory" <!--{if !$w_money}-->checked<!--{/if}-->><a onclick=sl('destory'); href="javascript:void(0);" >销毁尸体</a><br>
<!--{/if}-->
<!--{if $cstick_flag}-->
<input type="radio" name="command" id="cstick" value="cstick"><a onclick=sl('cstick'); href="javascript:void(0);" ><span tooltip="消耗100点怒气,将这具尸体变成一把殴系武器">抡起尸体!</span></a><br>
<!--{/if}-->
<!--{if $loot_depot_flag}-->
<input type="radio" name="command" id="loot_depot" value="loot_depot"><a onclick=sl('loot_depot'); href="javascript:void(0);" >转移安全箱权限</a><br>
<!--{/if}-->
......
......@@ -635,16 +635,16 @@
<p><a name="道具说明"><span class="subtitle2">10.道具说明</span></a></p>
<p>道具有以下几种类型:<br>
<span tooltip="$itemkinfo_tooltip['HH']['title']" class="yellow">『生命恢复』</span> 使用后按道具的效果值恢复生命。<br>
<span tooltip="$itemkinfo_tooltip['HS']['title']" class="yellow">『体力恢复』</span> 使用后按道具的效果值恢复体力。<br>
<span tooltip="$itemkinfo_tooltip['HB']['title']" class="yellow">『命体恢复』</span> 使用后同时恢复生命和体力。<br>
<span tooltip="$tps_ik['HH']['title']" class="yellow">『生命恢复』</span> 使用后按道具的效果值恢复生命。<br>
<span tooltip="$tps_ik['HS']['title']" class="yellow">『体力恢复』</span> 使用后按道具的效果值恢复体力。<br>
<span tooltip="$tps_ik['HB']['title']" class="yellow">『命体恢复』</span> 使用后同时恢复生命和体力。<br>
小提示:所有的恢复类道具,都有可能含毒。如果使用了带毒的恢复类道具,不仅不能恢复生命或者体力,还会损失一定的生命,并且进入“中毒”状态。<br>
<br>
<span tooltip="$itemkinfo_tooltip['C']['title']" class="yellow">『药剂』</span>
<span tooltip="$tps_ik['C']['title']" class="yellow">『药剂』</span>
根据药剂类型的不同,使用后能够去除异常状态。如果不在异常状态,服用药剂完全无效。<br>
<span tooltip="$itemkinfo_tooltip['V']['title']" class="yellow">『技能书籍』</span>
<span tooltip="$tps_ik['V']['title']" class="yellow">『技能书籍』</span>
使用后,能够按一定比例增加玩家的熟练度。如果玩家熟练度较高,技能书的效果会降低,甚至倒扣熟练度。<br>
<span tooltip="$itemkinfo_tooltip['M']['title']" class="yellow">『强化药物』</span>
<span tooltip="$tps_ik['M']['title']" class="yellow">『强化药物』</span>
使用后,能够按一定比例增加玩家的各项能力。如果玩家各项能力较高,能力药的效果会降低,甚至倒扣能力值。<br>
<br>
<span class="yellow">『武器』</span>
......@@ -653,24 +653,24 @@
使用后装备在身体上,增加防御力,并保护该部位不会受伤。分为体,头,腕,足四个部位。<br>
<span class="yellow">『饰品』</span> 使用后佩戴在身体上,部分饰物有特殊用途。<br>
<br>
<span tooltip="$itemkinfo_tooltip['T']['title']" class="yellow">『陷阱』</span> 使用后会在当前地区设下陷阱。<br>
<span tooltip="$tps_ik['T']['title']" class="yellow">『陷阱』</span> 使用后会在当前地区设下陷阱。<br>
<br>
<span tooltip="$itemkinfo_tooltip['EW']['title']" class="yellow">『天气控制』</span> 使用后将改变当前天气,可改变当前天气。“驱云弹”会将天气变为<span class="yellow b">『大晴』</span>,“造雾设备”会将天气变为<span class="grey b">『起雾』或『浓雾』</span>,其他天气道具也有各自的效果。<br>
<span tooltip="$tps_ik['EW']['title']" class="yellow">『天气控制』</span> 使用后将改变当前天气,可改变当前天气。“驱云弹”会将天气变为<span class="yellow b">『大晴』</span>,“造雾设备”会将天气变为<span class="grey b">『起雾』或『浓雾』</span>,其他天气道具也有各自的效果。<br>
但当天气处于<span class="blue">“冰雹”</span><span class="red">“龙卷风”</span><span class="yellow">“瘴气”</span><span class="clan">“暴风雪”</span><span class="gold">“极光”</span>时,无法使用天气设备改变天气。<BR>
<br>
<span tooltip="$itemkinfo_tooltip['EE']['title']" class="yellow">『电脑设备』</span> 使用后有一定概率能够<span class="yellow b">解封当前禁区</span>,让玩家可以进入禁区探索,但这一危险行动有一定概率导致该设备毁坏,甚至杀死玩家!<br>
<span tooltip="$tps_ik['EE']['title']" class="yellow">『电脑设备』</span> 使用后有一定概率能够<span class="yellow b">解封当前禁区</span>,让玩家可以进入禁区探索,但这一危险行动有一定概率导致该设备毁坏,甚至杀死玩家!<br>
电脑设备使用后会消耗电力(效果值),电力降到0则需要用『电池』充电才能继续使用。<br>
<br>
<span tooltip="$itemkinfo_tooltip['ER']['title']" class="yellow">『探测仪器』</span> 道具名一般是<span class="yellow b">“生命探测器”或者“广域生命探测器”</span>。前者使用后可以看到玩家所在地区的其他玩家以及各类NPC的数目,而后者的视野更是扩展到全地图。<br>
<span tooltip="$tps_ik['ER']['title']" class="yellow">『探测仪器』</span> 道具名一般是<span class="yellow b">“生命探测器”或者“广域生命探测器”</span>。前者使用后可以看到玩家所在地区的其他玩家以及各类NPC的数目,而后者的视野更是扩展到全地图。<br>
无论是PVP还是PVE,掌握对手动向都是至关重要的,因而寻找/合成广域生命探测器是高水平玩家必做的事。<br>
探测仪器使用后会消耗电力(效果值),电力降到0则需要用『探测器电池』充电才能继续使用。<br>
<br>
<span class="yellow">『弹药』</span> 使用后可为手中装备的射系武器,即<span class="yellow b">『远程兵器』</span><span class="yellow b">『重型枪械』</span>补充弹药。<br>
分为<span tooltip="$itemkinfo_tooltip['GB']['title']" class="clan">『手枪弹药』</span>
<span tooltip="$itemkinfo_tooltip['GBr']['title']" class="clan">『机枪弹药』</span>
<span tooltip="$itemkinfo_tooltip['GBe']['title']" class="clan">『能源弹药』</span>
<span tooltip="$itemkinfo_tooltip['GBi']['title']" class="clan">『气体弹药』</span>
<span tooltip="$itemkinfo_tooltip['GBh']['title']" class="clan">『重型弹药』</span>五种,
分为<span tooltip="$tps_ik['GB']['title']" class="clan">『手枪弹药』</span>
<span tooltip="$tps_ik['GBr']['title']" class="clan">『机枪弹药』</span>
<span tooltip="$tps_ik['GBe']['title']" class="clan">『能源弹药』</span>
<span tooltip="$tps_ik['GBi']['title']" class="clan">『气体弹药』</span>
<span tooltip="$tps_ik['GBh']['title']" class="clan">『重型弹药』</span>五种,
分别对应不同类型和属性的枪械。将鼠标悬浮在它们上可以看到详细介绍。<br>
射系武器用尽弹药后如果继续攻击,则会当做钝器使用,不仅属性无效,攻击力还会迅速下降,因此使用射系武器时请保证弹药充足!<br>
<br>
......@@ -890,20 +890,20 @@
射系武器有<span class="yellow">“子弹”</span>的设定,当武器耐久非“无限”时才能作为枪械进行射击。<BR>
如果射系武器子弹用尽,在游戏中耐久值将显示为“无限”。此时射系武器只能直接作为钝器攻击,攻击力会飞速下降。<BR>
根据射系武器所拥有的属性的不同,需要的子弹类型也不同,请注意收集。<BR>
带“电击”或者“音波”属性的射系武器,需要<span tooltip="$itemkinfo_tooltip['GBe']['title']" class="clan">『能源弹药』</span><BR>
带“火焰”或者“冰冻”属性的射系武器,需要<span tooltip="$itemkinfo_tooltip['GBi']['title']" class="clan">『气体弹药』</span><BR>
除此之外,连续攻击的射系武器属于“机枪”,需要<span tooltip="$itemkinfo_tooltip['GBr']['title']" class="clan">『机枪弹药』</span><BR>
不管带有何种属性,只要类别属于“重型枪械”,就需要<span tooltip="$itemkinfo_tooltip['GBh']['title']" class="clan">『重型弹药』</span><BR>
这些类型之外的射系武器属于手枪,用<span tooltip="$itemkinfo_tooltip['GB']['title']" class="clan">『手枪弹药』</span>就可以装填。<BR>
此外,还存在属性为<span tooltip="$itemspkinfo_tooltip['o']['title']" class="clan">“一发”</span>的枪械,这种枪械不能装填弹药,弹药用尽就永远无法作为枪械攻击。<BR>
带“电击”或者“音波”属性的射系武器,需要<span tooltip="$tps_ik['GBe']['title']" class="clan">『能源弹药』</span><BR>
带“火焰”或者“冰冻”属性的射系武器,需要<span tooltip="$tps_ik['GBi']['title']" class="clan">『气体弹药』</span><BR>
除此之外,连续攻击的射系武器属于“机枪”,需要<span tooltip="$tps_ik['GBr']['title']" class="clan">『机枪弹药』</span><BR>
不管带有何种属性,只要类别属于“重型枪械”,就需要<span tooltip="$tps_ik['GBh']['title']" class="clan">『重型弹药』</span><BR>
这些类型之外的射系武器属于手枪,用<span tooltip="$tps_ik['GB']['title']" class="clan">『手枪弹药』</span>就可以装填。<BR>
此外,还存在属性为<span tooltip="$tps_isk['o']['title']" class="clan">“一发”</span>的枪械,这种枪械不能装填弹药,弹药用尽就永远无法作为枪械攻击。<BR>
根据子弹类型的不同,弹夹上限也不同。<BR>
装填子弹的方法是装备射系武器并「使用」子弹。<BR>
<BR>
投系,爆系和灵系的武器,属于<span class="yellow">消耗品</span>,每攻击一次数量都会减少。当然也存在可以无限攻击的这三类武器。<BR>
<BR>
部分道具如<span tooltip="$iteminfo_tooltip_desc[4]['title']" class="clan">“磨刀石”</span>
<span tooltip="$iteminfo_tooltip_desc[3]['title']" class="clan">“钉”</span>
<span tooltip="$iteminfo_tooltip['武器师安雅的奖赏']['title']" class="clan">“武器师安雅的奖赏”</span>等,都能<span class="yellow">强化武器</span>,使用方法是装备武器然后使用特殊道具即可。具体情况见“特殊道具”。
部分道具如<span tooltip="$tps_names[4]['title']" class="clan">“磨刀石”</span>
<span tooltip="$tps_names[3]['title']" class="clan">“钉”</span>
<span tooltip="$tps_name['武器师安雅的奖赏']['title']" class="clan">“武器师安雅的奖赏”</span>等,都能<span class="yellow">强化武器</span>,使用方法是装备武器然后使用特殊道具即可。具体情况见“特殊道具”。
</p>
<BR>
<p><a name="属性"><span class="subtitle2">12.属性</span></a></p>
......@@ -931,7 +931,7 @@
</tr>
<tr>
<td class="b2" height=20px>
<span tooltip="$itemspkinfo_tooltip['r']['title']">连击</span>
<span tooltip="$tps_isk['r']['title']">连击</span>
</td>
<td class="b3">
<span>进行2-6次连续攻击</span>
......@@ -945,7 +945,7 @@
</tr>
<tr>
<td class="b2" height=20px>
<span tooltip="$itemspkinfo_tooltip['N']['title']">冲击</span>
<span tooltip="$tps_isk['N']['title']">冲击</span>
</td>
<td class="b3">
<span>计算伤害时对方装备防御力减半</span>
......@@ -959,7 +959,7 @@
</tr>
<tr>
<td class="b2" height=20px>
<span tooltip="$itemspkinfo_tooltip['n']['title']">贯穿</span>
<span tooltip="$tps_isk['n']['title']">贯穿</span>
</td>
<td class="b3">
<span>计算伤害时无视对方装备的防御、抹消属性</span>
......@@ -973,7 +973,7 @@
</tr>
<tr>
<td class="b2" height=20px>
<span tooltip="$itemspkinfo_tooltip['y']['title']">破格</span>
<span tooltip="$tps_isk['y']['title']">破格</span>
</td>
<td class="b3">
<span>计算伤害时无视对方装备的属性防御、抹消属性</span>
......@@ -987,7 +987,7 @@
</tr>
<tr>
<td class="b2" height=20px>
<span tooltip="$itemspkinfo_tooltip['S']['title']">消音</span>
<span tooltip="$tps_isk['S']['title']">消音</span>
</td>
<td class="b3">
<span>远程武器特有的属性,攻击时不会发出枪声。</span>
......@@ -1001,7 +1001,7 @@
</tr>
<tr>
<td class="b2" height=20px>
<span tooltip="$itemspkinfo_tooltip['o']['title']">一发</span>
<span tooltip="$tps_isk['o']['title']">一发</span>
</td>
<td class="b3">
<span>远程武器特有的属性,该武器无法装填弹药,弹药用完就只能当钝器使用。</span>
......@@ -1015,7 +1015,7 @@
</tr>
<tr>
<td class="b2" height=20px>
<span tooltip="$itemspkinfo_tooltip['d']['title']">爆炸</span>
<span tooltip="$tps_isk['d']['title']">爆炸</span>
</td>
<td class="b3">
<span>产生额外的伤害</span>
......@@ -1029,7 +1029,7 @@
</tr>
<tr>
<td class="b2" height=20px>
<span tooltip="$itemspkinfo_tooltip['u']['title']">火焰</span>
<span tooltip="$tps_isk['u']['title']">火焰</span>
</td>
<td class="b3">
<span>攻击附带火焰伤害</span>
......@@ -1043,7 +1043,7 @@
</tr>
<tr>
<td class="b2" height=20px>
<span tooltip="$itemspkinfo_tooltip['i']['title']">冻气</span>
<span tooltip="$tps_isk['i']['title']">冻气</span>
</td>
<td class="b3">
<span>攻击附带冻气伤害</span>
......@@ -1057,7 +1057,7 @@
</tr>
<tr>
<td class="b2" height=20px>
<span tooltip="$itemspkinfo_tooltip['p']['title']">带毒</span>
<span tooltip="$tps_isk['p']['title']">带毒</span>
</td>
<td class="b3">
<span>攻击附带毒性伤害</span>
......@@ -1071,7 +1071,7 @@
</tr>
<tr>
<td class="b2" height=20px>
<span tooltip="$itemspkinfo_tooltip['e']['title']">电击</span>
<span tooltip="$tps_isk['e']['title']">电击</span>
</td>
<td class="b3">
<span>攻击附带电气伤害</span>
......@@ -1085,7 +1085,7 @@
</tr>
<tr>
<td class="b2" height=20px>
<span tooltip="$itemspkinfo_tooltip['w']['title']">音波</span>
<span tooltip="$tps_isk['w']['title']">音波</span>
</td>
<td class="b3">
<span>攻击附带音波伤害</span>
......@@ -1099,7 +1099,7 @@
</tr>
<tr>
<td class="b2" height=20px>
<span tooltip="$itemspkinfo_tooltip['f']['title']">灼焰</span>
<span tooltip="$tps_isk['f']['title']">灼焰</span>
</td>
<td class="b3">
<span>攻击附带额外火焰伤害,无法被防御</span>
......@@ -1113,7 +1113,7 @@
</tr>
<tr>
<td class="b2" height=20px>
<span tooltip="$itemspkinfo_tooltip['k']['title']">冰华</span>
<span tooltip="$tps_isk['k']['title']">冰华</span>
</td>
<td class="b3">
<span>攻击附带额外冻气伤害,无法被防御</span>
......@@ -1127,7 +1127,7 @@
</tr>
<tr>
<td class="b2" height=20px>
<span tooltip="$itemspkinfo_tooltip['X']['title']">直死</span>
<span tooltip="$tps_isk['X']['title']">直死</span>
</td>
<td class="b3">
<span>使用该武器攻击时,有一定概率导致自己直接死亡</span>
......@@ -1160,7 +1160,7 @@
</tr>
<tr>
<td class="b2" height=20px>
<span tooltip="$itemspkinfo_tooltip['A']['title']">全系防御</span>
<span tooltip="$tps_isk['A']['title']">全系防御</span>
</td>
<td class="b3">
<span>所有六种武器类型的伤害减半</span>
......@@ -1171,7 +1171,7 @@
</tr>
<tr>
<td class="b2" height=20px>
<span tooltip="$itemspkinfo_tooltip['B']['title']">伤害抹消</span>
<span tooltip="$tps_isk['B']['title']">伤害抹消</span>
</td>
<td class="b3">
<span>将受到的普通攻击的伤害减至最少,接近神一般的存在</span>
......@@ -1182,7 +1182,7 @@
</tr>
<tr>
<td class="b2" height=20px>
<span tooltip="$itemspkinfo_tooltip['P']['title']">防殴</span>
<span tooltip="$tps_isk['P']['title']">防殴</span>
</td>
<td class="b3">
<span>钝器的伤害减半、对空手/拳无效</span>
......@@ -1193,7 +1193,7 @@
</tr>
<tr>
<td class="b2" height=20px>
<span tooltip="$itemspkinfo_tooltip['K']['title']">防斩</span>
<span tooltip="$tps_isk['K']['title']">防斩</span>
</td>
<td class="b3">
<span>锐器的伤害减半</span>
......@@ -1204,7 +1204,7 @@
</tr>
<tr>
<td class="b2" height=20px>
<span tooltip="$itemspkinfo_tooltip['G']['title']">防弹</span>
<span tooltip="$tps_isk['G']['title']">防弹</span>
</td>
<td class="b3">
<span>远程武器的伤害减半</span>
......@@ -1215,7 +1215,7 @@
</tr>
<tr>
<td class="b2" height=20px>
<span tooltip="$itemspkinfo_tooltip['C']['title']">防投</span>
<span tooltip="$tps_isk['C']['title']">防投</span>
</td>
<td class="b3">
<span>投掷武器的伤害减半</span>
......@@ -1226,7 +1226,7 @@
</tr>
<tr>
<td class="b2" height=20px>
<span tooltip="$itemspkinfo_tooltip['D']['title']">防爆</span>
<span tooltip="$tps_isk['D']['title']">防爆</span>
</td>
<td class="b3">
<span>爆炸物和爆炸属性的伤害减半</span>
......@@ -1237,7 +1237,7 @@
</tr>
<tr>
<td class="b2" height=20px>
<span tooltip="$itemspkinfo_tooltip['F']['title']">防符</span>
<span tooltip="$tps_isk['F']['title']">防符</span>
</td>
<td class="b3">
<span>灵力武器的伤害减半</span>
......@@ -1248,7 +1248,7 @@
</tr>
<tr>
<td class="b2" height=20px>
<span tooltip="$itemspkinfo_tooltip['a']['title']">属性防御</span>
<span tooltip="$tps_isk['a']['title']">属性防御</span>
</td>
<td class="b3">
<span>所有属性攻击的伤害减半,且不会中异常状态</span>
......@@ -1259,7 +1259,7 @@
</tr>
<tr>
<td class="b2" height=20px>
<span tooltip="$itemspkinfo_tooltip['b']['title']">属性抹消</span>
<span tooltip="$tps_isk['b']['title']">属性抹消</span>
</td>
<td class="b3">
<span>将受到的属性攻击的伤害减至最少,并且防御异常状态,接近神一般的存在</span>
......@@ -1270,7 +1270,7 @@
</tr>
<tr>
<td class="b2" height=20px>
<span tooltip="$itemspkinfo_tooltip['U']['title']">防火</span>
<span tooltip="$tps_isk['U']['title']">防火</span>
</td>
<td class="b3">
<span>火焰属性的伤害减半,且不会烧伤</span>
......@@ -1281,7 +1281,7 @@
</tr>
<tr>
<td class="b2" height=20px>
<span tooltip="$itemspkinfo_tooltip['I']['title']">防冻</span>
<span tooltip="$tps_isk['I']['title']">防冻</span>
</td>
<td class="b3">
<span>冻气属性的伤害减半,且不会冻结</span>
......@@ -1292,7 +1292,7 @@
</tr>
<tr>
<td class="b2" height=20px>
<span tooltip="$itemspkinfo_tooltip['q']['title']">防毒</span>
<span tooltip="$tps_isk['q']['title']">防毒</span>
</td>
<td class="b3">
<span>带毒属性的伤害减半,且不会中毒</span>
......@@ -1303,7 +1303,7 @@
</tr>
<tr>
<td class="b2" height=20px>
<span tooltip="$itemspkinfo_tooltip['E']['title']">绝缘</span>
<span tooltip="$tps_isk['E']['title']">绝缘</span>
</td>
<td class="b3">
<span>电气属性的伤害减半,且不会身体麻痹</span>
......@@ -1314,7 +1314,7 @@
</tr>
<tr>
<td class="b2" height=20px>
<span tooltip="$itemspkinfo_tooltip['W']['title']">隔音</span>
<span tooltip="$tps_isk['W']['title']">隔音</span>
</td>
<td class="b3">
<span>音波属性的伤害减半,且不会混乱</span>
......@@ -1325,7 +1325,7 @@
</tr>
<tr>
<td class="b2" height=20px>
<span tooltip="$itemspkinfo_tooltip['g']['title']">同志</span>
<span tooltip="$tps_isk['g']['title']">同志</span>
</td>
<td class="b3">
<span>如果玩家性别与敌人性别相同则会无法全力攻击;反之则可能造成暴击。</span>
......@@ -1336,7 +1336,7 @@
</tr>
<tr>
<td class="b2" height=20px>
<span tooltip="$itemspkinfo_tooltip['l']['title']">热恋</span>
<span tooltip="$tps_isk['l']['title']">热恋</span>
</td>
<td class="b3">
<span>如果玩家性别与敌人性别不同则会无法全力攻击;反之则可能造成暴击。</span>
......@@ -1347,7 +1347,7 @@
</tr>
<tr>
<td class="b2" height=20px>
<span tooltip="$itemspkinfo_tooltip['c']['title']">重击辅助</span>
<span tooltip="$tps_isk['c']['title']">重击辅助</span>
</td>
<td class="b3">
<span>减少重击和发动必杀技消耗的怒气,增加重击发生的概率</span>
......@@ -1358,7 +1358,7 @@
</tr>
<tr>
<td class="b2" height=20px>
<span tooltip="$itemspkinfo_tooltip['H']['title']">HP制御</span>
<span tooltip="$tps_isk['H']['title']">HP制御</span>
</td>
<td class="b3">
<span>减少反噬伤害损失的HP</span>
......@@ -1369,7 +1369,7 @@
</tr>
<tr>
<td class="b2" height=20px>
<span tooltip="$itemspkinfo_tooltip['M']['title']">陷阱探测</span>
<span tooltip="$tps_isk['M']['title']">陷阱探测</span>
</td>
<td class="b3">
<span>增加遭遇陷阱时的回避率</span>
......@@ -1380,7 +1380,7 @@
</tr>
<tr>
<td class="b2" height=20px>
<span tooltip="$itemspkinfo_tooltip['m']['title']">陷阱迎击</span>
<span tooltip="$tps_isk['m']['title']">陷阱迎击</span>
</td>
<td class="b3">
<span>遭遇陷阱时可以免疫伤害</span>
......@@ -1402,7 +1402,7 @@
</tr>
<tr>
<td class="b2" height=20px>
<span tooltip="$itemspkinfo_tooltip['z']['title']">天然</span>
<span tooltip="$tps_isk['z']['title']">天然</span>
</td>
<td class="b3">
<span>使用后会变成冴冴一样的天然呆</span>
......@@ -1413,7 +1413,7 @@
</tr>
<tr>
<td class="b2" height=20px>
<span tooltip="$itemspkinfo_tooltip['Z']['title']">菁英</span>
<span tooltip="$tps_isk['Z']['title']">菁英</span>
</td>
<td class="b3">
<span>带有此属性的物品可以用“宝石”系道具强化效果值</span>
......@@ -1424,7 +1424,7 @@
</tr>
<tr>
<td class="b2" height=20px>
<span tooltip="$itemspkinfo_tooltip['x']['title']">奇迹</span>
<span tooltip="$tps_isk['x']['title']">奇迹</span>
</td>
<td class="b3">
<span>人类,可以超越神么?……</span>
......
......@@ -48,17 +48,22 @@ if($vnmode=='none')
}
$tooltipinfo = '';
}
// 格式化名称
$cinfo['result'][0] = parse_info_desc($cinfo['result'][0],'m');
// 格式化类别
$cinfo['result'][1] = parse_info_desc($cinfo['result'][1],'k');
// 格式化属性
if(isset($cinfo['result'][4]) && is_array($cinfo['result'][4]))
{
foreach($cinfo['result'][4] as $sk)
$temp_carr[$cid]['spkinfo'] = parse_info_desc($cinfo['result'][4],'sk',$cinfo['result'][1]);
/*foreach($cinfo['result'][4] as $sk)
{
if(!empty($temp_carr[$cid]['spkinfo'])) $temp_carr[$cid]['spkinfo'] .= '+'.parse_itm_desc($sk,'sk');
else $temp_carr[$cid]['spkinfo'] = parse_itm_desc($sk,'sk');
}
else $temp_carr[$cid]['spkinfo'] = parse_info_desc($sk,'sk');
}*/
}
// 汇总合成结果至一段内
$temp_carr[$cid]['result'][0] = $cinfo['result'][0].'/'.$temp_vniteminfo[$cinfo['result'][1]].'/'.$cinfo['result'][2].'/'.$cinfo['result'][3];
$temp_carr[$cid]['result'][0] = $cinfo['result'][0].'/'.$cinfo['result'][1].'/'.$cinfo['result'][2].'/'.$cinfo['result'][3];
if(isset($temp_carr[$cid]['spkinfo'])) $temp_carr[$cid]['result'][0].='/'.$temp_carr[$cid]['spkinfo'];
}
}
......
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