私設SoS2オーナー応援BBS

新規発言一覧最新記事過去一覧検索ダウンロードページHOME

スレッド

└◇70:
Re[7]:Casino System Ver. 2.1について [moon] 09/25 23:34

 └◇72:Re[8]:Casino System Ver. 2.1について [初心者] 09/25 23:48
  └◇73:Re[9]:Casino System Ver. 2.1について [moon] 09/26 00:14
   └◇74:Re[10]:Casino System Ver. 2.1について [初心者] 09/26 00:21
    └◇75:Re[11]:Casino System Ver. 2.1について [moon] 09/26 08:40
     └◇76:ここだけは変更が必要 [moon] 09/26 08:53
      └◇77:Re:ここだけは変更が必要 [初心者] 09/26 17:22
       └◇78:景品としてのお金 [moon] 09/26 19:02<-last


70● Re[7]:Casino System Ver. 2.1について[ moon ] 2002 09/25 23:34
> > これでもまた同じ症状になる場合は、sub get_cardのforeach(1..$number){の上に以下の文を追加してエラー出力を連絡して欲しいのですが。
> >   &error("$number,$#cards,$cards[0],$cards[1],$cards[2],$#exist_cards,$exist_cards[0],$exist_cards[1],$exist_cards[2]");
> 2,-1,,,,-1,,,
> と表示されましたが・・・(汗
> なんのことやらさっぱり・・・(汗
>

上からわかること、@cardsの配列が空。(あってはならないことなんだけどな〜)
応急処置として、sub casino_action{の前の変数設定を全てsub casino_action{の下の行に移動(コピーではなく)して移動してきたもののmyを消してみてください。
そして、その後に先ほどの&error("〜");の出力を確認。(-1の数字が無ければとりあえずはOK)

最後に駄目元で、require 'casino.pl';を現在位置から&casino_action;の前に移動してみてください。
スレッド一覧


72● Re[8]:Casino System Ver. 2.1について[ 初心者 ] 2002 09/25 23:48

> 上からわかること、@cardsの配列が空。(あってはならないことなんだけどな〜)
> 応急処置として、sub casino_action{の前の変数設定を全てsub casino_action{の下の行に移動(コピーではなく)して移動してきたもののmyを消してみてください。
> そして、その後に先ほどの&error("〜");の出力を確認。(-1の数字が無ければとりあえずはOK)
>
> 最後に駄目元で、require 'casino.pl';を現在位置から&casino_action;の前に移動してみてください。

今度は2,51,1,1,1,51,0,1,2 などのように表示されました。
require 'casino.pl';ってどこにあります?
スレッド一覧


73● Re[9]:Casino System Ver. 2.1について[ moon ] 2002 09/26 00:14
> 今度は2,51,1,1,1,51,0,1,2 などのように表示されました。
これが正常な状態です。

> require 'casino.pl';ってどこにあります?
require 'casino.pl'を追加しませんでしたか?(casino.plの説明では記述が抜けているのに今気付きましたが、動いているということは足してありますよね・・・)

とりあえず、myを取った場合で動いたようなのでmyだったところをlocalに変更して確かめてください。(動いただけで正しい動作かはわかりませんが・・・)
でも、サブルーチン外のmyを認識しないのはどうしてなのだろう・・・。Perlのバージョンで違うとも思えないし。

# 遅いので今日はこれまでとします。
# 環境が特殊なのでなければ解決すると思いますのでほどほどにがんばってください。
スレッド一覧


74● Re[10]:Casino System Ver. 2.1について[ 初心者 ] 2002 09/26 00:21

> とりあえず、myを取った場合で動いたようなのでmyだったところをlocalに変更して確かめてください。(動いただけで正しい動作かはわかりませんが・・・)
> でも、サブルーチン外のmyを認識しないのはどうしてなのだろう・・・。Perlのバージョンで違うとも思えないし。
>
> # 遅いので今日はこれまでとします。
> # 環境が特殊なのでなければ解決すると思いますのでほどほどにがんばってください。
動いたようです♪♪
しかし、もう一つ普通な質問ですけど、
探索にてコインを発見する設定はどうやったらいいんでしょうか?
アイテムのスキル等がよくわかりません。
まったく初心者なのでよろしくお願いします。
スレッド一覧


75● Re[11]:Casino System Ver. 2.1について[ moon ] 2002 09/26 08:40
> 動いたようです♪♪
> しかし、もう一つ普通な質問ですけど、
> 探索にてコインを発見する設定はどうやったらいいんでしょうか?
> アイテムのスキル等がよくわかりません。
> まったく初心者なのでよろしくお願いします。
>

ふと思ったのですが、もしかして、sos2.cgiにcasino.plをコピペして追加したのではないですか?(これならmyが働いていないのも納得できるのですが)
一応、casino.plはsos2.cgiからrequire 'casino.pl';で呼び出して使用するように出来ているので。
(動いたのなら現状でも大丈夫かもしれませんが・・・)

コインを探索時に出す場合は、例えばお金の判定を利用して以下のように変更。(アイテムスキルを使用しない方法)
if ($idt !~ /Gl/) { push(@items,"$inm△$idt"); &joinitem('i') }
else { $mn += substr($idt,0,4) }
を、
if ($idt !~ /Gl/) { push(@items,"$inm△$idt"); &joinitem('i') }
elsif(rand(1000)<1){$inm = int(substr($idt,0,4)).'コイン'; $cs += $inm;} # お金の確率の1/1000でコインが手に入る。
else { $mn += substr($idt,0,4) }

探索は回数が出来るので、確率が高いとコインが大量に手に入ってしまい好ましくないです。
スレッド一覧


76● ここだけは変更が必要[ moon ] 2002 09/26 08:53
my $casino_item = './itm.dat';
の、./item.datを自分で用意した景品ファイルに変更してください。
スレッド一覧


77● Re:ここだけは変更が必要[ 初心者 ] 2002 09/26 17:22
その景品のことですが、
アイテム名<>ステータス<>コインの枚数<>ですよね?
10G<>00100000Gl<>1<>
のように設定をしたらなぜか、
10Gはお金ではなく、アイテムとして交換してしまったのです・・・。
どうなんでしょうか?
スレッド一覧


78● 景品としてのお金[ moon ] 2002 09/26 19:02
> その景品のことですが、
> アイテム名<>ステータス<>コインの枚数<>ですよね?
> 10G<>00100000Gl<>1<>
> のように設定をしたらなぜか、
> 10Gはお金ではなく、アイテムとして交換してしまったのです・・・。
> どうなんでしょうか?

ええと、デフォルトではお金は設定できません。
お金に交換したい場合は、sos2のsub find_itemのお金の処理を参考にしてください。(たぶん、数行追加するだけ)
スレッド一覧

CGIROOM