Files
ore/inc/ore_sub-ability.cgi
T
2026-06-22 21:09:26 +09:00

173 lines
3.7 KiB
Perl

#-----------------------------------------------------------#
# 罪と罰++ 二律背反 #
# Copyright(C) 2001-2002 by Vivid Studio. BLANK BOARD #
# Vivid Studio.[ http://www17.big.or.jp/~obochan/vivid/ ] #
# BLANK BOARD [ http://pom.to/ ] #
#-----------------------------------------------------------#
# 能力 Version 1.0
#--- [注意事項] --------------------------------------------#
# 1.このスクリプトは以下の利用規程に従って配布しています。 #
# http://www24.big.or.jp/~obo/game/ore_/gild/ #
#-----------------------------------------------------------#
#-------------------------------------------------------------------------------
# 能力メニュー
sub ability{
if(!$type){
&abi_up_data;
$log .= "UA $va G UD $vd G LR $vl G AG $vg G<br>体力・精神を15000 G を使いそれぞれの能\力を上げます<br>\n";
$tm=0;
$type='能力';
&ability_menu;
}
&dat_write;
}
sub ability_menu{
# 能力コマンド
@st = ('やめる','HP-UP','MP-UP','UA-UP','UD-UP','LR-UP','AG-UP');
$log2 .=qq|<form action="$script" method="$method" name="ore_">\n|;
$log2 .=qq|<td align="center" valign="middle">\n| if($mv_mode eq 'pc');
$log2 .=qq|<input type="hidden" name="id" value="$id">\n<input type="hidden" name="pw" value="$pw">\n|;
$log2 .=qq|<select name="cmd" size="1">\n|;
foreach(0 .. $#st){ $log2 .= "<option value=$_>$st[$_]</option>\n";}
$log2 .=qq|</select><br>\n|;
$log2 .=qq|<input type="submit" $button1 value="NEXT">$td_end</form>\n|;
}
#-------------------------------------------------------------------------------
# 能力処理
sub ability_exe{
if(!$tm){
&abi_up_data;
if($cmd<=0){
$log .= "止めておきます<br>\n";
$tm = $cmd = 0;
$type='';
&call_main_st;
}elsif($cmd==1){
if($gold<15000){
$log .= "お金が足りません<br>\n";
$tm = $cmd = 0;
$type='';
&ability_menu;
}else{
$log .= "最大HPが3上がった<br>\n";
$max_hp+=3;
$gold-=15000;
$tm = $cmd = 0;
$type='';
&call_main_st;
}
}elsif($cmd==2){
if($gold<15000){
$log .= "お金が足りません<br>\n";
$tm = $cmd = 0;
$type='';
&ability_menu;
}else{
$log .= "最大MPが3上がった<br>\n";
$max_mp+=3;
$gold-=15000;
$tm = $cmd = 0;
$type='';
&call_main_st;
}
}elsif($cmd==3){
if($gold<$va){
$log .= "お金が足りません<br>\n";
$tm = $cmd = 0;
&ability_menu;
}else{
$log .= "攻撃力が1上がった<br>\n";
$ua++;
$gold-=$va;
$tm = $cmd = 0;
$type='';
&call_main_st;
}
}elsif($cmd==4){
if($gold<$vd){
$log .= "お金が足りません<br>\n";
$tm = $cmd = 0;
&ability_menu;
}else{
$log .= "防御力が1上がった<br>\n";
$ud++;
$gold-=$vd;
$tm = $cmd = 0;
$type='';
&call_main_st;
}
}elsif($cmd==5){
if($gold<$vl){
$log .= "お金が足りません<br>\n";
$tm = $cmd = 0;
&ability_menu;
}else{
$log .= "指揮力が1上がった<br>\n";
$lr++;
$gold-=$vl;
$tm = $cmd = 0;
$type='';
&call_main_st;
}
}elsif($cmd==6){
if($gold<$vg){
$log .= "お金が足りません<br>\n";
$tm = $cmd = 0;
&ability_menu;
}else{
$log .= "敏捷力が1上がった<br>\n";
$ag++;
$gold-=$vg;
$tm = $cmd = 0;
$type='';
&call_main_st;
}
}
}
&dat_write;
}
# 能力上昇値計算
sub abi_up_data{
$va=int($ua*$ua)*100;
$va=15000 if($va<15000);
$va=500000 if($va>500000);
$vd=int($ud*$ud)*100;
$vd=15000 if($vd<15000);
$vd=500000 if($vd>500000);
$vl=int($lr*$lr)*100;
$vl=30000 if($vl<30000);
$vl=500000 if($vl>500000);
$vg=int($ag*$ag)*100;
$vg=15000 if($vg<15000);
$vg=500000 if($vg>500000);
return ($va,$vd,$vl,$vg);
}
1;