Commit 9c5b98df authored by hisuinohoshi's avatar hisuinohoshi Committed by GitHub

Merge branch 'amarillonmc:nachster' into waaagh

parents 538737e1 a74d4137
...@@ -123,6 +123,7 @@ ...@@ -123,6 +123,7 @@
'R' => 11, //馄饨伤害 'R' => 11, //馄饨伤害
'N' => 68, //冲击 'N' => 68, //冲击
'n' => 89, //贯穿 'n' => 89, //贯穿
'y' => 90, //破格
'r' => 144, //连击 'r' => 144, //连击
//属性攻击: //属性攻击:
'u' => 52, //火焰 'u' => 52, //火焰
...@@ -286,7 +287,9 @@ ...@@ -286,7 +287,9 @@
$submix_list = array $submix_list = array
( (
Array('stuff'=>Array('u','x','z'),'result'=>'f','obbs'=>33), Array('stuff'=>Array('u','x','z'),'result'=>'f','obbs'=>33),
Array('stuff'=>Array('i','x','z'),'result'=>'k','obbs'=>33), Array('stuff'=>Array('i','x','z'),'result'=>'k','obbs'=>33),
//伤害制御:5个奇迹……现在的机制的话,大概是0.67*0.67*0.01的概率
Array('stuff'=>Array('x','x','x','x','x'),'result'=>'h','obbs'=>1),
); );
# 随机的次要特征组合配方 注意:指定属性(sk_*)一定要放到最前面 # 随机的次要特征组合配方 注意:指定属性(sk_*)一定要放到最前面
$random_submix_list = Array $random_submix_list = Array
...@@ -352,6 +355,8 @@ ...@@ -352,6 +355,8 @@
'DA' => Array('盾','掌','手套','朋友','匣子','鱼鳞','力场盾','鱼竿','手表','手环','镣铐','命数','战甲A'), 'DA' => Array('盾','掌','手套','朋友','匣子','鱼鳞','力场盾','鱼竿','手表','手环','镣铐','命数','战甲A'),
'DF' => Array('鞋','靴','爪','加护','轨迹','脚步','飞毯','马靴','草鞋','触手','尾巴','滑板','战甲F'), 'DF' => Array('鞋','靴','爪','加护','轨迹','脚步','飞毯','马靴','草鞋','触手','尾巴','滑板','战甲F'),
'H' => Array('秘药','罐头','糊糊','杏仁豆腐','烤鱼面包','章鱼须','乌鸡肉','生海带','幸运饼干','长芽土豆','眼泪','趣味'),//补给 'H' => Array('秘药','罐头','糊糊','杏仁豆腐','烤鱼面包','章鱼须','乌鸡肉','生海带','幸运饼干','长芽土豆','眼泪','趣味'),//补给
'V' => Array('指南','卷轴','手册','秘籍','乐谱','知识','共鸣','秘术','法典','广告','指引','教导','语录'),//技能书
'M' => Array('羽毛','结晶','精华','甘露','魂','眼','心','血','魔核','宝珠','力量','勇气','波纹'),//强化药物
'0' => Array('怪东西','???','竟然是它','■■■','数据削除'),//BUG词尾:没有找到类别的情况下会变成这个 '0' => Array('怪东西','???','竟然是它','■■■','数据削除'),//BUG词尾:没有找到类别的情况下会变成这个
); );
...@@ -361,9 +366,13 @@ ...@@ -361,9 +366,13 @@
$itmk_to_itmsk_tags = Array $itmk_to_itmsk_tags = Array
( (
//攻击面特征 //攻击面特征
'W' => Array('u','e','i','w','p','d','r','f','k','R','S','o','n','N'), 'W' => Array('u','e','i','w','p','d','r','f','k','R','S','o','n','N','y'),
//可以直接由元素得到的攻击面特征
'W_0' => Array('u','e','i','w','p','d','S'),
//防御面特征 //防御面特征
'D' => Array('P','K','C','G','D','F','U','E','I','W','q','M','a','A','B','b'), 'D' => Array('P','K','C','G','D','F','U','E','I','W','q','M','a','A','B','b'),
//可以直接由元素得到的防御面特征
'D_0' => Array('P','K','C','G','D','F','U','E','I','W','q','M'),
//杂项特征 //杂项特征
'misc' => Array('z','x','c','h','H','l','g','Z'), 'misc' => Array('z','x','c','h','H','l','g','Z'),
); );
......
...@@ -364,13 +364,13 @@ ...@@ -364,13 +364,13 @@
0,16,2,香菇,PS,35,1,, 0,16,2,香菇,PS,35,1,,
0,16,5,松茸,HS,50,1,, 0,16,5,松茸,HS,50,1,,
0,16,5,松茸,PS,50,1,, 0,16,5,松茸,PS,50,1,,
0,16,5,香蕉,HB,25,1,, 0,16,5,香蕉,HB,25,1,🍎,
0,16,5,苹果,HB,45,1,, 0,16,5,苹果,HB,45,1,🍎,
99,16,6,香蕉,HB,25,1,, 99,16,6,香蕉,HB,25,1,🍎,
99,16,6,苹果,HB,45,1,, 99,16,6,苹果,HB,45,1,🍎,
99,16,3,香蕉,PB,25,1,, 99,16,3,香蕉,PB,25,1,🍎,
99,16,3,苹果,PB,45,1,, 99,16,3,苹果,PB,45,1,🍎,
99,16,5,烂苹果,PB2,90,1,, 99,16,5,烂苹果,PB2,90,1,🍎,
99,16,10,捕兽器,TN,240,1,, 99,16,10,捕兽器,TN,240,1,,
99,16,10,捕兽器,TO,240,1,, 99,16,10,捕兽器,TO,240,1,,
0,16,7,《小黄的草帽》,DH,50,70,, 0,16,7,《小黄的草帽》,DH,50,70,,
...@@ -604,9 +604,9 @@ ...@@ -604,9 +604,9 @@
0,29,10,水,HS,60,1,, 0,29,10,水,HS,60,1,,
0,29,5,水,PS,60,1,, 0,29,5,水,PS,60,1,,
0,29,40,天然水,HS,55,3,z, 0,29,40,天然水,HS,55,3,z,
0,29,2,香蕉,HB,25,1,, 0,29,2,香蕉,HB,25,1,🍎,
0,29,4,西瓜,HB,60,1,, 0,29,4,西瓜,HB,60,1,🍎,
0,29,2,苹果,HB,45,1,, 0,29,2,苹果,HB,45,1,🍎,
0,29,1,甜生姜,HB,42,5,, 0,29,1,甜生姜,HB,42,5,,
0,29,4,甜生姜,PB2,42,5,, 0,29,4,甜生姜,PB2,42,5,,
99,29,5,绳索,TN,120,1,, 99,29,5,绳索,TN,120,1,,
...@@ -616,20 +616,20 @@ ...@@ -616,20 +616,20 @@
99,29,5,圣石之种,TO,240,1,, 99,29,5,圣石之种,TO,240,1,,
99,29,5,走失的猫咪,PH,400,1,, 99,29,5,走失的猫咪,PH,400,1,,
99,29,5,轮椅,DF,99,∞,, 99,29,5,轮椅,DF,99,∞,,
99,29,4,香蕉,HB,25,1,, 99,29,4,香蕉,HB,25,1,🍎,
99,29,6,西瓜,HB,60,1,, 99,29,6,西瓜,HB,60,1,🍎,
99,29,4,苹果,HB,45,1,, 99,29,4,苹果,HB,45,1,🍎,
99,29,1,香蕉,PB,25,1,, 99,29,1,香蕉,PB,25,1,🍎,
99,29,2,西瓜,PB,60,1,, 99,29,2,西瓜,PB,60,1,🍎,
99,29,1,苹果,PB,45,1,, 99,29,1,苹果,PB,45,1,🍎,
99,29,5,烂苹果,PB2,90,1,, 99,29,5,烂苹果,PB2,90,1,🍎,
99,29,20,空白符卡,X,1,1,, 99,29,20,空白符卡,X,1,1,,
0,30,10,杯装水,HS,60,1,, 0,30,10,杯装水,HS,60,1,,
0,30,5,杯装水,PS,60,1,, 0,30,5,杯装水,PS,60,1,,
0,30,40,蒸馏水,HS,55,3,z, 0,30,40,蒸馏水,HS,55,3,z,
0,30,2,香蕉,HB,25,1,, 0,30,2,香蕉,HB,25,1,🍎,
0,30,4,西瓜,HB,60,1,, 0,30,4,西瓜,HB,60,1,🍎,
0,30,2,苹果,HB,45,1,, 0,30,2,苹果,HB,45,1,🍎,
0,30,7,原型武器P,WP,60,1,, 0,30,7,原型武器P,WP,60,1,,
0,30,7,原型武器K,WK,60,1,, 0,30,7,原型武器K,WK,60,1,,
0,30,7,原型武器G,WG,60,1,, 0,30,7,原型武器G,WG,60,1,,
...@@ -1151,14 +1151,14 @@ ...@@ -1151,14 +1151,14 @@
0,99,4,被遗忘的伞,WP,20,1,, 0,99,4,被遗忘的伞,WP,20,1,,
0,99,1,☆博丽护符☆,WF,60,1,d, 0,99,1,☆博丽护符☆,WF,60,1,d,
0,99,1,☆山蘑菇粉☆,WC,60,1,p, 0,99,1,☆山蘑菇粉☆,WC,60,1,p,
99,99,5,香蕉,HB,25,1,, 99,99,5,香蕉,HB,25,1,🍎,
99,99,5,西瓜,HB,60,1,, 99,99,5,西瓜,HB,60,1,🍎,
99,99,5,苹果,HB,45,1,, 99,99,5,苹果,HB,45,1,🍎,
99,99,1,香蕉,PB,25,1,, 99,99,1,香蕉,PB,25,1,🍎,
99,99,1,西瓜,PB,60,1,, 99,99,1,西瓜,PB,60,1,🍎,
99,99,1,苹果,PB,45,1,, 99,99,1,苹果,PB,45,1,🍎,
99,99,5,烂苹果,PB2,90,1,, 99,99,5,烂苹果,PB2,90,1,🍎,
0,99,1,★全图不唯一的野生巨大香蕉★,HB,2400,1,, 0,99,1,★全图不唯一的野生巨大香蕉★,HB,2400,1,🍎,
0,99,2,水果刀,Z,1,1,, 0,99,2,水果刀,Z,1,1,,
0,99,5,天然气,PB2,55,3,z, 0,99,5,天然气,PB2,55,3,z,
1,99,2,☆黄金麦克风☆,WP,256,5,w, 1,99,2,☆黄金麦克风☆,WP,256,5,w,
......
...@@ -49,12 +49,12 @@ ...@@ -49,12 +49,12 @@
,DA,1,1,, ,DA,1,1,,
,DF,1,1,, ,DF,1,1,,
,A,1,1,, ,A,1,1,,
,HH,1,1,, ,HH,1,1,🍎,
,HS,1,1,, ,HS,1,1,🍎,
,HB,1,1,, ,HB,1,1,🍎,
,PH,1,1,, ,PH,1,1,🍎,
,PS,1,1,, ,PS,1,1,🍎,
,PB,1,1,, ,PB,1,1,🍎,
,X,1,1,, ,X,1,1,,
,Y,1,1,, ,Y,1,1,,
,Z,1,1,, ,Z,1,1,,
...@@ -202,8 +202,8 @@ SSS团长的半身像,WP,55,2,, ...@@ -202,8 +202,8 @@ SSS团长的半身像,WP,55,2,,
奇怪的液体,HB,265,11,, 奇怪的液体,HB,265,11,,
奇怪的液体,HB,265,11,, 奇怪的液体,HB,265,11,,
最强-バカ⑨制冰块,HB,99,99,, 最强-バカ⑨制冰块,HB,99,99,,
黑白色的烂苹果,HS,999,1,, 黑白色的烂苹果,HS,999,1,🍎,
小得奇怪的香蕉,HB,3600,1,, 小得奇怪的香蕉,HB,3600,1,🍎,
奇迹-白魔法,HB,1232,1,, 奇迹-白魔法,HB,1232,1,,
奇迹-幻想,HB,2343,2,, 奇迹-幻想,HB,2343,2,,
奇迹-永恒,HB,3454,3,, 奇迹-永恒,HB,3454,3,,
...@@ -221,10 +221,10 @@ SSS团长的半身像,WP,55,2,, ...@@ -221,10 +221,10 @@ SSS团长的半身像,WP,55,2,,
龙卷风发生器,EW,1,1,11, 龙卷风发生器,EW,1,1,11,
暴风雪发生器,EW,1,1,12, 暴风雪发生器,EW,1,1,12,
冰雹发生器,EW,1,1,13, 冰雹发生器,EW,1,1,13,
生命探测器,R,1,1,, 生命探测器,ER,1,1,,
生命探测器,R,3,1,, 生命探测器,ER,3,1,,
生命探测器,R,5,1,, 生命探测器,ER,5,1,,
生命探测器,R,7,1,, 生命探测器,ER,7,1,,
广域生命探测器,ER,5,1,2, 广域生命探测器,ER,5,1,2,
水果刀,Z,1,1,, 水果刀,Z,1,1,,
水果刀,Z,1,1,, 水果刀,Z,1,1,,
......
...@@ -1113,6 +1113,7 @@ $itemspkinfo = Array( ...@@ -1113,6 +1113,7 @@ $itemspkinfo = Array(
'+' => '技能抽取', '+' => '技能抽取',
'^' => '背包', '^' => '背包',
'🧰' => '工具', '🧰' => '工具',
'🍎' => '水果',
); );
//club20 元素大师: //club20 元素大师:
......
...@@ -488,10 +488,11 @@ ...@@ -488,10 +488,11 @@
{ {
$eitms = '∞'; $eitms = '∞';
} }
# 大成功时防具耐久等于防具效果 # 大成功时防具效果和耐久等于两者中的较大值
if($emix_flag == 4) if($emix_flag == 4)
{ {
$eitms = $eitme; $eitms = max($eitme, $eitms);
$eitme = $eitms;
} }
} }
# 强化药物、技能书籍效耐调整:效果最大不能超过角色等级、耐久最大不超过角色等级的平方根,且向下调整 # 强化药物、技能书籍效耐调整:效果最大不能超过角色等级、耐久最大不超过角色等级的平方根,且向下调整
...@@ -583,25 +584,25 @@ ...@@ -583,25 +584,25 @@
if(is_array($obbs)) $obbs = isset($obbs[$itmk]) ? $obbs[$itmk] : $obbs['default']; if(is_array($obbs)) $obbs = isset($obbs[$itmk]) ? $obbs[$itmk] : $obbs['default'];
if(rand(0,100) > $obbs) continue; if(rand(0,100) > $obbs) continue;
} }
# 配对成功!消除素材特征
//18th fix: kudos to 低维生物 //18th fix: kudos to 低维生物
$delsub = $minfo['stuff']; //$delsub = $minfo['stuff'];
//$count_delsub = count($mnifo['stuff']); //$count_delsub = count($minfo['stuff']);
$count_delsub = 0; $count_delsub = 0;
if(!empty($mnifo['stuff'])) if(!empty($minfo['stuff']))
{ {
$count_delsub = $mnifo['stuff']; $count_delsub = count($minfo['stuff']);
} }
for ($i = 0; $i < count($subtags); $i++){ for ($i = 0; $i < count($subtags); $i++){
if (in_array($subtags[$i], $minfo['stuff'])){ if (in_array($subtags[$i], $minfo['stuff'])){
unset($subtags[$i]); unset($subtags[$i]);
$count_delsub -= 1; $count_delsub -= 1;
if ($count_delsub == 0) break; if ($count_delsub <= 0) break;
} }
} }
if(array_search($delsub, $subtags)!== false){ //? //if(array_search($delsub, $subtags)!== false){ //?
# 配对成功!消除素材特征 //foreach($minfo['stuff'] as $delsub) unset($subtags[array_search($delsub,$subtags)]);}
foreach($minfo['stuff'] as $delsub) unset($subtags[array_search($delsub,$subtags)]);}
//Alternative Fix: This will consume all properties in $subtags that matches $delsub. //Alternative Fix: This will consume all properties in $subtags that matches $delsub.
//But stacking is better anyways. - comment out the above FOR loop then uncomment this to use //But stacking is better anyways. - comment out the above FOR loop then uncomment this to use
//$subtags = array_diff($subtags, $delsub); //$subtags = array_diff($subtags, $delsub);
...@@ -740,7 +741,7 @@ ...@@ -740,7 +741,7 @@
# 前缀以“tags_”表示的,代表要选用带有对应标签的属性 # 前缀以“tags_”表示的,代表要选用带有对应标签的属性
elseif(strpos($snum,'tags_')===0) elseif(strpos($snum,'tags_')===0)
{ {
$snum = $itmk_to_itmsk_tags[str_replace('tags_','',$snum)]; $snum = $itmk_to_itmsk_tags[(str_replace('tags_','',$snum)).'_0'];
shuffle($snum); shuffle($snum);
$skey = $snum[0]; $skey = $snum[0];
} }
......
...@@ -164,7 +164,7 @@ ...@@ -164,7 +164,7 @@
break; break;
} }
} }
if($flag_complete == 0) break; if($flag_complete == 0) continue;
$emix_arr = json_encode($list['stuff']); $emix_arr = json_encode($list['stuff']);
$quickmix .= '<input type="button" value="投入" onclick="AddMixElements(' . $emix_arr .');"> '; $quickmix .= '<input type="button" value="投入" onclick="AddMixElements(' . $emix_arr .');"> ';
$quickmix .= "<span class=''>".parse_itemmix_resultshow($rand_emix_fixlist[$key]['result'])."</span><br>"; $quickmix .= "<span class=''>".parse_itemmix_resultshow($rand_emix_fixlist[$key]['result'])."</span><br>";
......
...@@ -2244,26 +2244,35 @@ function itemuse($itmn,&$data=NULL) { ...@@ -2244,26 +2244,35 @@ function itemuse($itmn,&$data=NULL) {
for($i = 1; $i <= 6; $i ++) { for($i = 1; $i <= 6; $i ++) {
//global ${'itm' . $i}, ${'itmk' . $i},${'itms' . $i},${'itme' . $i},$wk; //global ${'itm' . $i}, ${'itmk' . $i},${'itms' . $i},${'itme' . $i},$wk;
foreach(Array('香蕉','苹果','西瓜') as $fruit){ if (strpos(${'itmsk' . $i}, '🍎') !== false) {
if($wk >= 120){
if ( strpos ( ${'itm' . $i} , $fruit ) !== false && strpos ( ${'itm' . $i} , '皮' ) === false && strpos ( ${'itm' . $i} , '■' ) === false && (strpos ( ${'itmk' . $i} , 'H' ) === 0 || strpos ( ${'itmk' . $i} , 'P' ) === 0 )) { $log .= "练过刀就是好啊。你娴熟地削着果皮。<br><span class=\"yellow\">{${'itm'.$i}}</span>变成了<span class=\"yellow\">★残骸★</span>!<br>咦为什么会出来这种东西?算了还是不要吐槽了。<br>";
if($wk >= 120){ ${'itm' . $i} = '★残骸★';
$log .= "练过刀就是好啊。你娴熟地削着果皮。<br><span class=\"yellow\">{${'itm'.$i}}</span>变成了<span class=\"yellow\">★残骸★</span>!<br>咦为什么会出来这种东西?算了还是不要吐槽了。<br>"; ${'itme' . $i} *= rand(2,4);
${'itm' . $i} = '★残骸★'; ${'itms' . $i} *= rand(3,5);
${'itme' . $i} *= rand(2,4); ${'itmsk' . $i} = '';
${'itms' . $i} *= rand(3,5); $flag = true;
$flag = true; $wk++;
$wk++; }else{
}else{ $log .= "想削皮吃<span class=\"yellow\">{${'itm'.$i}}</span>,没想到削完发现只剩下一堆果皮……<br>手太笨拙了啊。<br>";
$log .= "想削皮吃<span class=\"yellow\">{${'itm'.$i}}</span>,没想到削完发现只剩下一堆果皮……<br>手太笨拙了啊。<br>"; $brackets_arr = Array('☆☆','★★','〖〗','【】','『』','「」','✦✦','☾☽','☼☼','■■');
${'itm' . $i} = str_replace($fruit, $fruit.'皮',${'itm' . $i} ); $if_brackets = 0;
${'itmk' . $i} = 'TN'; foreach ($brackets_arr as $brackets)
${'itms' . $i} *= rand(2,4); {
$flag = true; if ((mb_substr(${'itm' . $i}, 0, 1)).(mb_substr(${'itm' . $i}, -1)) === $brackets){
$wk++; $if_brackets = 1;
${'itm' . $i} = mb_substr(${'itm' . $i}, 0, -1).'皮'.mb_substr(${'itm' . $i}, -1);
break;
}
} }
break; if ($if_brackets == 0) ${'itm' . $i} = ${'itm' . $i}.'皮';
${'itmk' . $i} = 'TN';
${'itms' . $i} *= rand(2,4);
${'itmsk' . $i} = '';
$flag = true;
$wk++;
} }
break;
} }
if($flag == true) {break;}; if($flag == true) {break;};
} }
......
...@@ -236,13 +236,15 @@ ...@@ -236,13 +236,15 @@
return 0; return 0;
} }
$numbers = array_fill(0, 6, 14); $numbers = array_fill(0, 6, 14);
# 生成5个随机数,使它们的和等于15 # 生成6个随机数,使它们的和等于16
$t = 16; $t = 16;
for ($i = 0; $i < 6; $i++) for ($i = 0; $i < 5; $i++)
{ {
$at = rand(1,$t); $t -= $at; $at = rand(1,5);
$t -= $at;
$numbers[$i] += $at; $numbers[$i] += $at;
} }
$numbers[5] += $t;
$log .= "你把口袋中的元素搅混在一起……然后满怀期待得等着它们自己把自己整理好……<br>"; $log .= "你把口袋中的元素搅混在一起……然后满怀期待得等着它们自己把自己整理好……<br>";
foreach($elements_info as $key => $info) foreach($elements_info as $key => $info)
{ {
...@@ -260,8 +262,8 @@ ...@@ -260,8 +262,8 @@
{ {
foreach($elements_info as $key => $info) foreach($elements_info as $key => $info)
{ {
# 不足3000的,补足到3000 # 不足1000的,补足到3000
if(${'element'.$key} < 3000) if(${'element'.$key} < 1000)
{ {
${'element'.$key} = 3000; ${'element'.$key} = 3000;
continue; continue;
......
...@@ -172,7 +172,7 @@ function adtsk(){ ...@@ -172,7 +172,7 @@ function adtsk(){
$log .= '<span class="red">武器已经带有电击属性,不用改造!</span><br />'; $log .= '<span class="red">武器已经带有电击属性,不用改造!</span><br />';
$mode = 'command'; $mode = 'command';
return; return;
}elseif(strlen($wepsk)>=5){ }elseif(strlen($wepsk)>=40){
$log .= '<span class="red">武器属性数目达到上限,无法改造!</span><br />'; $log .= '<span class="red">武器属性数目达到上限,无法改造!</span><br />';
$mode = 'command'; $mode = 'command';
return; return;
...@@ -210,7 +210,7 @@ function adtsk(){ ...@@ -210,7 +210,7 @@ function adtsk(){
$log .= '<span class="red">武器已经带毒,不用改造!</span><br />'; $log .= '<span class="red">武器已经带毒,不用改造!</span><br />';
$mode = 'command'; $mode = 'command';
return; return;
}elseif(strlen($wepsk)>=5){ }elseif(strlen($wepsk)>=40){
$log .= '<span class="red">武器属性数目达到上限,无法改造!</span><br />'; $log .= '<span class="red">武器属性数目达到上限,无法改造!</span><br />';
$mode = 'command'; $mode = 'command';
return; return;
......
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