Files
ore/inc/ore_sub-shop.cgi

506 lines
18 KiB
Perl
Executable File
Raw Permalink Blame History

This file contains invisible Unicode characters
This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
#-----------------------------------------------------------#
# 죄와 벌++ 이율배반 #
# 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.1
#--- [주의사항] --------------------------------------------#
# 1.이 스크립트는 이하의 이용규정에 따라 배포되고 있습니다. #
# http://www24.big.or.jp/~obo/game/ore_/gild/ #
#-----------------------------------------------------------#
#-------------------------------------------------------------------------------
#쇼핑몰 메뉴
sub shop{
if(!$type){
$log .= "$nm 은(는) 쇼핑몰에 왔다.<br>\n";
$tm=0;
$type='쇼핑';
&shop_menu;
}
&dat_write;
}
sub shop_menu{
# 쇼핑몰
my @sg = ('떠나기','무구점','방어구점','도구점','금융업','푸치 복권','진료소');
$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 .. $#sg){ $log2 .=qq|<option value="$_">$sg[$_]</option>\n|;}
$log2 .=qq|</select><br>\n|;
$log2 .=qq|<input type="submit" $button1 value="NEXT">$td_end</form>\n|;
}
#-------------------------------------------------------------------------------
#쇼핑몰 처리
sub shop_exe{
# 행선지 선택
if(!$tm){
if($cmd<=0){
$log .= "$nm 은(는) 도망치듯 떠났다.<br>\n";
$tm = $cmd = 0;
$type='';
&call_main_st;
}elsif($cmd==1){
$log .= "어서 오세요. 오늘은 무슨 일이신가요?<br>\n";
$tm=10;
$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|;
$log2 .=qq|<option value="0">그만두기</option>\n|;
$log2 .=qq|<option value="1">구매하기</option>\n|;
$log2 .=qq|<option value="2">판매하기</option>\n|;
$log2 .=qq|</select><br>\n|;
$log2 .=qq|<input type="submit" $button1 value="NEXT">$td_end</form>\n|;
}elsif($cmd==2){
$log .= "어서 오십시오. 무엇을 찾으십니까?<br>\n";
$tm=30;
$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|;
$log2 .=qq|<option value="0">그만두기</option>\n|;
$log2 .=qq|<option value="1">구매하기</option>\n|;
$log2 .=qq|<option value="2">판매하기</option>\n|;
$log2 .=qq|</select><br>\n|;
$log2 .=qq|<input type="submit" $button1 value="NEXT">$td_end</form>\n|;
}elsif($cmd==3){
$log .= "어서 오세요. 다양한 물건을 다루고 있습니다.<br>\n";
$tm=50;
$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|;
$log2 .=qq|<option value="0">그만두기</option>\n|;
$log2 .=qq|<option value="1">구매하기</option>\n|;
$log2 .=qq|<option value="2">판매하기</option>\n|;
$log2 .=qq|</select><br>\n|;
$log2 .=qq|<input type="submit" $button1 value="NEXT">$td_end</form>\n|;
}elsif($cmd==4){
$log .= "어서 오세요. 머니샵에 오신 것을 환영합니다.<br>\n";
$tm=70;
$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|;
$log2 .=qq|<option value=0>그만두기</option>\n|;
$log2 .=qq|<option value=1>대출</option>\n|;
$log2 .=qq|<option value=2>상환</option>\n|;
$log2 .=qq|</select><br>\n|;
$log2 .=qq|<input type="submit" $button1 value="NEXT">$td_end</form>\n|;
}elsif($cmd==5){
$log .= "어서 오세요~♪ 한 장에 500G입니다♪<br> <br>1등 10만 G<br>2등 5만 G<br>3등 1만 G<br>4등 1천 G<br><br>행운상 ???<br>불행상 ???<br><br>죄벌상1 $dg_data[1][1] (희귀)<br>죄벌상2 $df_data[1][1] (희귀)\n";
$tm=90;
$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|;
$log2 .=qq|<option value=0>그만두기</option>\n|;
$log2 .=qq|<option value=1>도전</option>\n|;
$log2 .=qq|</select><br>\n|;
$log2 .=qq|<input type="submit" $button1 value="NEXT">$td_end</form>\n|;
}elsif($cmd==6){
$log .= "어서 오세요. 죄벌 진료소에 오신 것을 환영합니다.<br>\n";
$tm=120;
$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|;
$log2 .=qq|<option value=0>그만두기</option>\n|;
$log2 .=qq|<option value=1>치료</option>\n|;
$log2 .=qq|<option value=2>성전환</option>\n|;
$log2 .=qq|</select><br>\n|;
$log2 .=qq|<input type="submit" $button1 value="NEXT">$td_end</form>\n|;
}elsif($cmd==7){
$log .= "멋진 사랑이 시작될지도!? 결혼상담소에 오신 것을 환영합니다♪<br>\n";
$tm=150;
$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|;
$log2 .=qq|<option value=0>나중에</option>\n|;
$log2 .=($sei==1) ? qq|<option value=2>신부 찾기</option>\n| : qq|<option value=1>신랑 찾기</option>\n| ;
$log2 .=qq|</select><br>\n|;
$log2 .=qq|<input type="submit" $button1 value="NEXT">$td_end</form>\n|;
}
# 무구점 - 구매 or 판매
}elsif($tm==10){
if($cmd<=0){#消
$log .= "뭐야, 그만두는 건가. 다음에 또 오라고!<br>\n";
$tm = $cmd = 0;
&shop_menu;
}elsif($cmd==1){#買-1
if($sogo==3||$sogo==4){
$log .= "$sogo_p[$sogo] 낙인이 찍혀 있어서는 쇼핑을 할 수 없다고.<br>\n";
$tm = $cmd = 0;
&shop_menu;
}else{
$log .= "무엇을 살 거야?<br>참고로 무구는 1개밖에 가질 수 없다고!<br>\n";
$tm=12;
require "./inc/ore_sub-shop-p1_$mv_mode\.cgi";&bugu_s;
}
}elsif($cmd==2){#売-1
if($dg_a==0){
$log .= "$nm 님은 무구를 가지고 있지 않잖아!<br>\n";
$tm = $cmd = 0;
&shop_menu;
}else{
if($dg_a<=10){
my $v = int(($dg_data[$dg_a][2]-$dg_data[$dg_a][2]/$dg_cnt)/2);
$log .= "오! 히든 무기인 $dg_data[$dg_a][1] 이잖아! 어디서 구한 거야?<br>기꺼이 $v G에 매입하도록 하지.\n";
$tm=25;
}else{
my $v = int(($dg_data[$dg_a][2]-$dg_data[$dg_a][2]/$dg_cnt)/2);
$log .= "그렇군, $dg_data[$dg_a][1] 은(는) $v G에 사도록 하지!<br>\n";
$tm=25;
}
$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|;
$log2 .=qq|<option value=0>그만두기</option>\n|;
$log2 .=qq|<option value=1>팔기</option>\n|;
$log2 .=qq|</select><br>\n|;
$log2 .=qq|<input type="submit" $button1 value="NEXT">$td_end</form>\n|;
}
}
}elsif($tm==12){#買-2
if($cmd<=0){#消
$log .= "뭐야 그만두는 건가. 그럼 다른 건 어떡할 거야?<br>\n";
}else{
foreach(11 .. $#dg_data){
if($cmd eq $_ && $gold >= $dg_data[$_][2]){
$log .= "$dg_data[$_][2]G를 지불하고, $dg_data[$_][1] 을(를) 구입했습니다.<br>\n";
$gold -= $dg_data[$_][2];
$dg_a = $_;
$dg_cnt = $dg_data[$_][3];
}elsif($cmd eq $_ && $gold<$dg_data[$_][2]){
$log .= "돈이 부족하다고!<br>\n";
}
}
}
$tm = $cmd = 0;
&shop_menu;
}elsif($tm==25){#売-2
if($cmd<=0){#消
$log .= "뭐야 그만두는 건가. 그럼 다른 건 어떡할 거야?<br>\n";
}elsif($cmd==1){
my $v = int(($dg_data[$dg_a][2]-$dg_data[$dg_a][2]/$dg_cnt)/2);
$log .= "$dg_data[$dg_a][1] 을(를) $v G에 판매했습니다.<br>\n";
$gold += $v;
$dg_a = $dg_cnt = 0;
}
$tm = $cmd = 0;
&shop_menu;
# 방어구점 - 구매 or 판매
}elsif($tm==30){
if($cmd<=0){#消
$log .= "또 오십시오.<br>\n";
$tm = $cmd = 0;
&shop_menu;
}elsif($cmd==1){#買-1
if($sogo==3||$sogo==4){
$log .= "$sogo_p[$sogo] 낙인이 찍혀 계신 분은 구매하실 수 없습니다.<br>\n";
$tm=0;
&shop_menu;
}else{
$log .= "무엇을 찾으십니까?<br>방어구는 최대 1개까지 소지할 수 있습니다.<br>\n";
$tm=32;
require "./inc/ore_sub-shop-p1_$mv_mode\.cgi";&bogu_s;
}
}elsif($cmd==2){#売-1
if($df_a==0){
$log .= "$nm 님은 방어구를 소지하고 있지 않습니다.<br>\n";
$tm = $cmd = 0;
&shop_menu;
}else{
if($df_a<=10){
my $v = int(($df_data[$df_a][2]-$df_data[$df_a][2]/$df_cnt)/2);
$log .= "오! 히든 방어구인 $df_data[$df_a][1] 이군요! 어디서 구하셨나요?<br>기꺼이 $v G에 매입하도록 하겠습니다.\n";
$tm=45;
}else{
my $v = int(($df_data[$df_a][2]-$df_data[$df_a][2]/$df_cnt)/2);
$log .= "그렇군요... $df_data[$df_a][1] 은(는) $v G에 매입해 드리겠습니다만.<br>\n";
$tm=45;
}
$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|;
$log2 .=qq|<option value=0>그만두기</option>\n|;
$log2 .=qq|<option value=1>팔기</option>\n|;
$log2 .=qq|</select><br>\n|;
$log2 .=qq|<input type="submit" $button1 value="NEXT">$td_end</form>\n|;
}
}
}elsif($tm==32){#売-2
if($cmd<=0){#消
$log .= "그 외에는 어떻게 하시겠습니까?<br>\n";
}else{
foreach(11 .. $#df_data){
if($cmd eq $_ && $gold >= $df_data[$_][2]){
$log .= "$df_data[$_][2]G를 지불하고, $df_data[$_][1] 을(를) 구입했습니다.<br>\n";
$gold -= $df_data[$_][2];
$df_a = $_;
$df_cnt = $df_data[$_][3];
}elsif($cmd eq $_ && $gold<$df_data[$_][2]){
$log .= "돈이 부족합니다.<br>\n";
}
}
}
$tm = $cmd = 0;
&shop_menu;
}elsif($tm==45){#買-2
if($cmd<=0){#消
$log .= "그 밖에 어떻게 하시겠습니까?<br>\n";
}elsif($cmd==1){
my $v = int(($df_data[$df_a][2]-$df_data[$df_a][2]/$df_cnt)/2);
$log .= "$df_data[$df_a][1] 을(를) $v G에 판매했습니다.<br>\n";
$gold += $v;
$df_a = $df_cnt = 0;
}
$tm = $cmd = 0;
&shop_menu;
# 도구점 - 구매 or 판매
}elsif($tm==50){
if($cmd<=0){#消
$log .= "그 외에 다른 용건이 있으십니까?<br>\n";
$tm = $cmd = 0;
&shop_menu;
}elsif($cmd==1){#買-1
if($sogo==3||$sogo==4){
$log .= "$sogo_p[$sogo] 낙인이 찍혀 있어서는 쇼핑을 할 수 없습니다.<br>\n";
$tm = $cmd = 0;
&shop_menu;
}else{
$log .= "무엇을 구매하시겠습니까?<br>참고로 도구는 1개밖에 소지할 수 없습니다.<br>\n";
$tm=52;
require "./inc/ore_sub-shop-p1_$mv_mode\.cgi";&dogu_s;
}
}elsif($cmd==2){#売-1
if(!$di_a){
$log .= "$nm 님은 도구를 소지하고 있지 않습니다.<br>\n";
$tm = $cmd = 0;
&shop_menu;
}else{
if($di_a<=10){
my $v = int(($di_data[$di_a][2])/2);
$log .= "오! 히든 아이템인 $di_data[$di_a][1] 이군요! 어디서 구하셨나요?<br>꼭 $v G에 매입하게 해 주십시오.\n";
$tm=65;
}else{
my $v = int(($di_data[$di_a][2])/2);
$log .= "그렇군요, $di_data[$di_a][1] 은(는) $v G에 매입하겠습니다.<br>\n";
$tm=65;
}
$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|;
$log2 .=qq|<option value=0>그만두기</option>\n|;
$log2 .=qq|<option value=1>팔기</option>\n|;
$log2 .=qq|</select><br>\n|;
$log2 .=qq|<input type="submit" $button1 value="NEXT">$td_end</form>\n|;
}
}
}elsif($tm==52){#買-2
if($cmd<=0){#消
$log .= "그 외에 다른 용건이 있으십니까?<br>\n";
}else{
foreach(11 .. $#di_data){
if($cmd eq $_ && $gold >= $di_data[$_][2]){
$log .= "$di_data[$_][2]G를 지불하고, $di_data[$_][1] 을(를) 구입했습니다.<br>\n";
$gold -= $di_data[$_][2];
$di_a = $_;
$di_cnt = $di_data[$_][3];
}elsif($cmd eq $_ && $gold<$di_data[$_][2]){
$log .= "돈이 부족합니다. 돌아가 주십시오.<br>\n";
}
}
}
$tm = $cmd = 0;
&shop_menu;
}elsif($tm==65){
if($cmd<=0){#消
$log .= "그 외에 다른 용건이 있으십니까?<br>\n";
}elsif($cmd==1){
my $v = int(($di_data[$di_a][2])/2);
$log .= "$di_data[$di_a][1] 을(를) $v G에 판매했습니다.<br>\n";
$gold += $v;
$di_a = 0;
}
$tm = $cmd = 0;
&shop_menu;
# 금융업
}elsif($tm==70){
if($cmd<=0){#消
$log .= "계획적으로 이용해 주세요♪<br>\n";
$tm = $cmd = 0;
&shop_menu;
}elsif($cmd==1){#借
if($sogo==3||$sogo==4){
$log .= "이 이상은 신상에 좋지 않아. 빨리 갚지 않으면 무서운 형님들이 올 거라고...<br>\n";
$tm = $cmd = 0;
&shop_menu;
}else{
&syakin;
$log .= "돈을 빌리고 싶은가 보군. 얼마나 빌리고 싶나?<br>$vw G <b>$sogo_p[3]</b> 낙인<br>$vx G <b>$sogo_p[4]</b> 낙인<br> <br>낙인은 빚을 갚거나 다른 칭호를 획득할 때까지 사라지지 않네.\n";
$tm=72;
$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|;
$log2 .=qq|<option value="0">그만두기</option>\n|;
$log2 .=qq|<option value="1">$vw G</option>\n|;
$log2 .=qq|<option value="2">$vx G</option>\n|;
$log2 .=qq|</select><br>\n|;
$log2 .=qq|<input type="submit" $button1 value="NEXT">$td_end</form>\n|;
}
}elsif($cmd==2){#返
if($sogo!=3&&$sogo!=4){
$log .= "$nm 님에게는 상환 의무가 없네.<br>\n";
$tm = $cmd = 0;
&shop_menu;
}else{
$log .= "드디어 빚을 갚아 주는군. $nm 님의 상환액은 ";
&syakin;
if($sogo==3){
$log .= "<b>$vw2 G</b>일세.\n";
}elsif($sogo==4){
$log .= "<b>$vx2 G</b>일세.\n";
}
$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|;
$log2 .=qq|<option value="0">그만두기</option>\n|;
$log2 .=qq|<option value="1">지불하기</option>\n|;
$log2 .=qq|</select><br>\n|;
$log2 .=qq|<input type="submit" $button1 value="NEXT">$td_end</form>\n|;
$tm=74;
}
}
}elsif($tm==72){#借 - 額
if($cmd<=0){#消
$log .= "뭐야 그만두는 건가. 그래서, 그 밖에 어떻게 할 텐가?<br>\n";
$tm = $cmd = 0;
&shop_menu;
}elsif($cmd==1){
&syakin;
$gold +=$vw;
$sogo =3;
$log .= "$vw G 를 빌렸습니다. $nm 에게는 <b>$sogo_p[3]</b> 낙인이 찍혔습니다...<br>\n";
$tm = $cmd = 0;
&shop_menu;
}elsif($cmd==2){
&syakin;
$gold +=$vx;
$sogo =4;
$log .= "$vx G 를 빌렸습니다. $nm 에게는 <b>$sogo_p[4]</b> 낙인이 찍혔습니다...<br>\n";
$tm = $cmd = 0;
&shop_menu;
}
}elsif($tm==74){#返 - 額
if($cmd<=0){#消
$log .= "빨리 돈을 갚아 달라고! 그래서, 그 밖에 어떻게 할 텐가?<br>\n";
$tm = $cmd = 0;
&shop_menu;
}elsif($cmd==1){
&syakin;
if($sogo==3){
if($gold > $vw2){
$gold -=$vw2;
$log .= "빚 $vw2 G 를 상환했습니다.<br>\n";
$sogo =0;
}else{
$log .= "그런 푼돈으로는 부족하네!<br>\n";
}
}elsif($sogo==4){
if($gold > $vx2){
$gold -=$vx2;
$log .= "빚 $vx2 G 를 상환했습니다.<br>\n";
$sogo =0;
}else{
$log .= "그런 푼돈으로는 부족하네!<br>\n";
}
}
$tm = $cmd = 0;
&shop_menu;
}
}
# 宝くじ
elsif($tm>=90 && $tm<120){require './inc/ore_sub-shop-lotto.cgi';&lotto;}
# 診療所
elsif($tm>=120 && $tm<140){require './inc/ore_sub-shop-medical.cgi';&medical;}
# 結婚相談所
elsif( $tm>=150 && $tm<200 && $mv_mode eq 'pc' &&
$lv>=15 && $lv<=50){require './inc/ore_sub-shop-marry.cgi';&marry;}
&dat_write;
}
#-------------------------------------------------------------------------------
#借金計算
sub syakin {
if($lv < 40){
$vw = int($lv*1000);
$vx = int($lv*2000);
$vw2 = int($lv*1250);
$vx2 = int($lv*2500);
}else{
$vw = 40000;
$vx = 80000;
$vw2 = 50000;
$vx2 = 100000;
}
}
1;