2012年5月25日金曜日

じゃんけん

このブログのタイトルに「HSP」が入っているのに1回もHSPの記事を書いていないのはまずいので今日はとりあえず簡単なソースを書いてみました。



ちなみにHSPは、おにたま氏が作った素晴らしいフリーのプログラミングソフトです。知らない人は「HSP」で検索してみてください。



今日作った物はここ からダウンロードしてください。



たぶん簡単に勝てると思います。コンピューターは特に考えないでサイコロを振っているような物ですから。(乱数を発生させているだけ)



実行するとセキリュテイソフトに警告されるかもしれませんがウイルスはまったく入ってないので安心してください。



#include "obj.as"
randomize
button "グー",*gu
button "チョキ",*tyo
button "パー",*pa
button "もう一回",*a

*a
color 255,255,255
boxf 0,100,6400,150
color 0,0,0
objgray 0, 1
objgray 1, 1
objgray 2, 1
objgray 3, 0
x = rnd(3)
stop
*gu
pos 0,100
if(x = 0){
  w++
  mes "コンピューターはグーです。"
  mes"あいこでした。"+k+"勝"+m+"敗"+w+"分け"
}
if(x = 1){
  k++
  mes "コンピューターはチョキです。"
  mes"あなたの勝ちです。"+k+"勝"+m+"敗"+w+"分け"
}
if(x = 2){
  m++
  mes "コンピューターはパーです。"
  mes"あなたの負けです。"+k+"勝"+m+"敗"+w+"分け"
}
objgray 0, 0
objgray 1, 0
objgray 2, 0
objgray 3, 1
stop
*tyo
pos 0,100
if(x = 1){
  w++
  mes "コンピューターはチョキです。"
  mes"あいこでした。"+k+"勝"+m+"敗"+w+"分け"
}
if(x = 2){
  k++
  mes "コンピューターはパーです。"
  mes"あなたの勝ちです。"+k+"勝"+m+"敗"+w+"分け"
}
if(x = 0){
  m++
  mes "コンピューターはグーです。"
  mes"あなたの負けです。"+k+"勝"+m+"敗"+w+"分け"
}
objgray 0, 0
objgray 1, 0
objgray 2, 0
objgray 3, 1
stop
*pa
pos 0,100
if(x = 2){
  w++
  mes "コンピューターはパーです。"
  mes"あいこでした。"+k+"勝"+m+"敗"+w+"分け"
}
if(x = 0){
  k++
  mes "コンピューターはグーです。"
  mes"あなたの勝ちです。"+k+"勝"+m+"敗"+w+"分け"
}
if(x = 1){
  m++
  mes "コンピューターはチョキです。"
  mes"あなたの負けです。"+k+"勝"+m+"敗"+w+"分け"
}
objgray 0, 0
objgray 1, 0
objgray 2, 0
objgray 3, 1
stop



HSPやっていない方は見てもわけわかんないですね。



やっている方は「何とも初歩的で簡単な」なんて思っているのではないでしょうか?



このソースがほしい方はご自由にコピーしていって下さい。フリーです。







13 件のコメント:

  1. マーガレット2012年5月25日 8:22

    分からん!

    返信削除
  2. どっかの部長2012年5月26日 3:22

    OH、ほんとにHSPの記事を書いたのですね
    ここにはHSPで困ったことなんかを質問してもいいのですか?

    返信削除
  3. らべんだあ2012年5月26日 3:40

    >マーガレットさん
    やっぱりですか・・・
    まあ、ソースの方じゃなくてダウンロードした方で遊んでもらえればいいですが。
    >どっかの部長さん
    はじめまsではなくてある部の部長さんですね。(勘違いしていたらすみません)
    HSPの質問は大丈夫ですよ。わかる範囲で答えていけたらと思います。

    返信削除
  4. どっかの部長2012年5月26日 4:32

    ��らべんだあ さん
    そうです、ある部の部長で合ってます
    ミスってました。すまーぬ

    返信削除
  5. らべんだあ2012年5月26日 5:00

    >どっかの部長さん
    やっぱりそうでしたか。別に問題は無いですけど。それとコメントには質問だけでなく自作スクリプトも載せていただいてもかまいません。かなり長い場合はコメントには掲載せず本文の方で紹介という形で公開になってしまうと思いますが。

    返信削除
  6. どっかの部長2012年5月27日 16:16

    ではHSPの質問を一つ
    mmloadでロードする音楽はどこに置けばええのかな?
    mmloadはファイルなくてもエラー出ないからちゃんとできてるかわからんのだけれど…

    返信削除
  7. パソコンのノベルゲームってどうやって作るのですか?

    返信削除
  8. らべんだあ2012年5月28日 1:02

    >どっかの部長さん
    とりあえず下の命令をコピーして適当なところ(デスクトップを例に説明していきます)に保存してください。このままではエラーが出ます。
    mmload "filename",p1
    mmplay p2
    では説明に入りたいと思います。
    1行目の「"filename"」のとこの""の中を再生したいファイル名に変更してください。(拡張子まで入力してください)そのファイルはカレントディレクトリに入れておいて下さい。今回はデスクトップにスクリプトを保存したのでデスクトップに再生したいファイルをおいてください。
    ちなみにカレントディレクトリは
    mes dir_cur
    で表示されます。
    次に1行目の「P1」のところを「0」にしてください。(半角)
    再生する時に必要です。0で無くてもかまいませんが必ず半角の数字にしておいて下さい。
    2行目の「P2」をさっき変更した数字と同じ数字に変えてください。P1を「0」にした人はこれも「0」にしてください。
    たぶんこれで再生されるはずです。
    >つみれさん
    つみれ部員さんですよね?
    ノベルゲームの簡単なものなら
    buttonとmesとclsだけで作れると思います。今度作ったら公開します。

    返信削除
  9. どっかの部長2012年5月28日 15:06

    おお、懇切丁寧な解説ありがとうございますー
    カレントディレクトリってマイドキュメントだったのか…音楽が鳴らないわけだぜ…
    カレントディレクトリって変えられないのかな?
    音楽は無事に鳴りましたー
    鳴らした音楽はこちら↓
    http://www.youtube.com/watch?v=bZS6Qnyq_0E
    テンションあがるのでどぞー

    返信削除
  10. どっかの部長2012年5月28日 15:27

    調べたらありましたー
    chdir フォルダパス
    でもこれで E:¥hsp 音楽鳴らす練習¥music
    ってやっても「そんなフォルダはないぜ!」って言われる…

    返信削除
  11. らべんだあ2012年5月28日 18:13

    >どっかの部長さん
    鳴らせましたか。よかったですね。
    確かにその曲いい曲ですね。HSPでゲームを作ってそれのBGM荷でも使用するのかな?
    カレントディレクトリについて説明が足りなかったので細くしておきます。
    カレントディレクトリは標準ではスクリプトのファイル(ファイル名.hspや実行ファイル.exe)を保存した場所になっています。
    音楽.hspというスクリプトを
    E:¥hsp 音楽鳴らす練習¥music
    に保存したのならカレントディレクトリも
    E:¥hsp 音楽鳴らす練習¥music
    という訳です。
    ファイルの参照はカレントディレクトリからの相対パスで記述してください。スクリプトより上のディレクトリだと少し記述が面倒です。
    HSPでは基本的にファイルの参照は相対パス(意味が意味がわからなかったら検索)でします。
    そのため基本的には読み込みたいファイルはカレントディレクトリの下に無いといけないわけです。
    しかし、カレントディレクトリより上のファイルを再生したい時もありますよね。
    その場合は「../」を使います。これは「今いるディレクトリのひとつ上のディレクトリ」という意味です。
    さらにやっていくと別のディスク(E:¥やC:¥など)からも読み込みたいなんてこともありますよね。この場合は相対パスでの記述は不可能です。そのため絶対パスで記述しますが注意点が1つあります。普通は「a¥b」のように「¥」はひとつですが絶対パスの場合は「¥」ではなく「¥¥」とします。おそらくこれを間違えたからファイルがないとか言われたのでしょう。
    最後に気づいていると思いますが「¥」はHSP(他の言語でも)では「/」と記述する事も可能です。僕は「/」でやっています。
    まだわからないところがあったらコメントしてください。
    文字だけだとわかりづらいのでブログのほうに講座みたいな感じでアップします。そっちをみてもらった方がわかりやすいかと。

    返信削除
  12. どっかの部長2012年5月28日 20:28

    おお、これまた丁寧な解説をどうも。
    そこまで知識があるのならブログでHSPのシューティング講座とか開いてもよいのでは?
    HSP仲間が増える!…かもしれないですしおすし
    最近自分ばっかりコメントしているようでなんだか悪いですし、いっそ知らない人用にHSP(プログラミング)の概念から教えるのも悪くないかもですねー
    連続投稿失礼いたしましたm(_ _)m

    返信削除
  13. らべんだあ2012年5月29日 2:14

    >どっかの部長さん
    講座なんて出来ませんよ。
    シューティングのだってニコ動の講座見て作ったのですから、他の人の無断転載みたいになってしまいますもん。

    返信削除