トップページgamedev
1001コメント303KB

HSP - Hot Soup Processor [6]

■ このスレッドは過去ログ倉庫に格納されています
0001名前は開発中のものです。04/03/07 21:01ID:XxrmN16J

       (  ,,,)
        .(  ,,)      スクリプト言語 HotSoupProcessor について
        ( ,,).        ゲーム製作の視点から、また〜りと語り合うスレ。
     , -──- 、
    (,;::-──-; )-、
     .|` ̄ ̄ ̄´;;|ヽ l   * 質問する前に検索してみる事
     l;    :::;;;l-' /   * ヲチ、ネタなどはスレ違い
    ,-ヽ───.'-、´..   * 前スレ、関連サイトは >>2-5 あたり
    ヽ ──── '
0647名前は開発中のものです。04/05/20 11:52ID:0NKk3t5H
俺にとっては賞品より宣伝効果のほうが大きいんだけどね。
つーか別に賞品はいらない。
0648名前は開発中のものです。04/05/20 12:44ID:2WLwyFHn
なんだなんだ マサくん祭りの始まりか?
0649名前は開発中のものです。04/05/20 13:25ID:zitYhkDD
確かに。デジカメもらってもねえ。。ってかんじ。
0650名前は開発中のものです。04/05/20 16:32ID:Sze5uQ3A
まいどお初です。
いまSTG作ってるんですが、表示したキャラクターのアニメーションを
gcopy 2,ani*50+50,580,50,50 ;aniは変数1〜3
って感じで表示してたんですが、動きが速すぎたので入門書見ながら
もうちょっと遅くしようとして await や wait を使ったら
そのキャラが表示されているときゲーム自体も遅くなってしまいました。
何か良い方法ありますか?
0651名前は開発中のものです。04/05/20 17:00ID:nR5Z5FCN
repeat
    if cnt\10 = 0{ ; 10回に1度処理する
        ; 遅くしたい処理
    }
    ; 遅くしたくない処理
    await 5
loop
0652名前は開発中のものです。04/05/20 17:27ID:Sze5uQ3A
多謝!
さっそくやってみまつ
0653名前は開発中のものです。04/05/20 18:25ID:+S4hzfqC
家庭用ゲーム機のソフトって
プログラム言語でつくられているんですよね?_
なんて言語ですか?
0654名前は開発中のものです。04/05/20 18:29ID:/alMxW9k
>>653
C
0655名前は開発中のものです。04/05/20 20:39ID:S2F0Xl8D
なぜここで聞くんだ?
0656名前は開発中のものです。04/05/20 20:42ID:0NKk3t5H
厨房だから
0657名前は開発中のものです。04/05/20 20:44ID:ErvNKhGq
普通はC、場合によってはアセ。
今はミドルウェアが主流だから
書く量も少なくはなってきている。
0658名前は開発中のものです。04/05/20 23:07ID:LZpG158+
>>644
>>645
どもです。
0659名前は開発中のものです。04/05/21 00:32ID:rqTgmeE1
HSPを勉強したいんだけどお勧めの本ってあります?
ちなみにプログラミング経験はN88-BASICをちょこっと勉強したくらい
0660名前は開発中のものです。04/05/21 00:48ID:sufb9b5Q
HSPだけはやめておけ
0661名前は開発中のものです。04/05/21 01:14ID:GxmUKizO
>>659
N88…俺と同じだw。
でも俺はHSP付属ドキュメントだけでゲームとか作ったので
本はわかんないスマソ。昔のBASICでもかじってればそのままいけるよ多分。
0662名前は開発中のものです。04/05/21 08:37ID:3KMYaI6b
HSPは勉強するものでなく楽しむものです。
本とか読まなくても「自分のPCでこんな事が出来る様にしたい。」という趣味的情熱があれば自然に使える様になっていきます。
別にコンピューター関係の仕事とかに就くつもりがなければ充分これで楽しめます。
0663名前は開発中のものです。04/05/21 12:00ID:GxmUKizO
俺仕事はグラフィッカーだしな〜w
0664名前は開発中のものです。04/05/21 17:58ID:Cy3Rl9hh
stick命令で、&で特定のキーを判別できますよね?
その逆で、stickで特定のキーを押していないことを判断するにはどうすればいいのでしょうか?
if a&32 : else : ほにゃらら
これよりも効率のいい方法があれば教えてください。
0665名前は開発中のものです。04/05/21 18:02ID:yg3RAL01
>>664
効率悪いか?
0666名前は開発中のものです。04/05/21 18:07ID:Cy3Rl9hh
これが最高ですか。
なんか回りくどい気がして、if命令の中で直接できる式がないかと思ったんです。

にしても、普段は一見過疎気味なのに、
質問があると即答してくれるここは割りとROMな人が多い板ですね。
僕もですが。
0667名前は開発中のものです。04/05/21 18:15ID:jeBk4Dd6
if a&32=0 : ほにゃらら
じゃダメ?
0668名前は開発中のものです。04/05/21 18:16ID:WWCKm6bQ
>>666
他の言語でもそれが普通だと思われます。
現に自分はそれでやっているので。
0669名前は開発中のものです。04/05/21 18:21ID:Cy3Rl9hh
>>667
それいただき!
0670名前は開発中のものです。04/05/21 18:35ID:AmENF4VP
でもstick自体getkeyより遅いしなぁ・・・。

#define settimer ll_callfunc void, 0, hProc: ll_ret sttimer
#define gettimer ll_callfunc void, 0, hProc: ll_ret timer: timer -= sttimer
#const SAMPLE 10000000

ll_libload hDll, "kernel32"
ll_getproc hProc, "GetTickCount", hDll
mes ""+SAMPLE+"回"

settimer
repeat SAMPLE: stick key, 0, 0: loop
gettimer
mes "stick: "+timer+"ms"

settimer
repeat SAMPLE: getkey key, 13: loop
gettimer
mes "getkey: "+timer+"ms"
stop
0671名前は開発中のものです。04/05/21 19:25ID:0raRFZZo
やっとスープちゃんの本4章まで読み終わった・・・。
0672名前は開発中のものです。04/05/21 20:23ID:WTc2ntyU
OSに、パッドを繋がなくても「パッドがある」と認識させたいんですが、
HSPで可能ですか?操作できなくてもいいので・・・
0673名前は開発中のものです。04/05/21 20:28ID:Cy3Rl9hh
>>670
すごい差だな・・・。
0674名前は開発中のものです。04/05/21 22:42ID:rqTgmeE1
>>661
N88-BASICの頃は質問ばっかりしながら数当てゲームを改良してRPG風にしてました。
ちょうど去年の夏のことですw
確かに、HSPで去年と同じゲームを作れそうな気がします。
>>660>>662
そうですか・・・
将来その手の職につくかはわかりませんが、今は楽しむことを考えてプログラミングしてみたいと思います。
0675名前は開発中のものです。04/05/21 22:50ID:kmNojWO4
#defineって、命令を変数化するって考えて良いんですかねぇ
0676名前は開発中のものです。04/05/21 23:10ID:UczegKFw
>>675
全然違う。
#defineは置き換えだ。
0677名前は開発中のものです。04/05/21 23:13ID:UczegKFw
普通は数字を文字にしたりするのに使う。
プログラム中に「20」とか出てきてもそれが何を意味してるかわからないから。
また、最大値みたいに多数の場所で同じ値を使うときなども楽に変更できる。
0678名前は開発中のものです。04/05/21 23:14ID:kmNojWO4
>>676
サンクス。。

んで、本題なんだけど、
#define baf buffer

baf 2
baf 3
baf 4

こういう書き方って出来るのかなぁ。。
0679名前は開発中のものです。04/05/21 23:14ID:AmENF4VP
#define A mes "ABCDEFG"
A
stop

はコンパイル時に

mes "ABCDEFG"
stop

になる
0680名前は開発中のものです。04/05/21 23:17ID:GxmUKizO
>>674
N88を触ってた世代なのにまだ将来とか言える年齢なのか?
0681名前は開発中のものです。04/05/21 23:18ID:kmNojWO4
ああ、そうか。
bufferじゃなくてIDを置き換えればいいんだ。
#define id 2
repeat 3
buffer id
id=id+1
loop
0682名前は開発中のものです。04/05/21 23:19ID:A1poc0IN
せめて実行してから書き込みたまえよ
0683名前は開発中のものです。04/05/21 23:40ID:UczegKFw
>>681
それだと実行時に
2=2+1になる。
単純な「文字の置き換え」なんだって。
実行前に行われる。
0684名前は開発中のものです。04/05/21 23:44ID:AmENF4VP
repeat 3, 2
buffer cnt
loop

で良いんじゃないのか?
0685名前は開発中のものです。04/05/22 00:02ID:AP2s4cWp
>>683
orz・・・・
>>684
いやぁ、、これを配列に利用したいんですよ・・・
複数の絵を順次に表示させるプログラムを作りたいんです。。
0686名前は開発中のものです。04/05/22 00:20ID:uDs2RaiG
>>685
配列の番号を格納する変数を用意すればいいんでないかい?
#defineってのはただ単純に置き換えるだけ。
どちらかといえば可読性や拡張性を上げるためにつかわれている。
0687名前は開発中のものです。04/05/22 04:53ID:V1O6b4Hw
スレ違いでスマンがちょっと言わせてくれ
>>680
おいおい、N88は学校施設ではまだ現役のところもあるらしいぜ
あとオヤヂのお下がりで使ってるとかな
ま、人それぞれってこった
068865904/05/22 08:41ID:UoLTjU62
>>680
技術の教科書にソースが載ってて興味を持ったわけです。
つーわけでまだ若いよ。
0689名前は開発中のものです。04/05/22 12:00ID:3ET/hOwF
>>680
ActiveBasicでN88は現役。
0690名前は開発中のものです。04/05/22 13:59ID:QIB7NWXd
知らんかった
0691名前は開発中のものです。04/05/22 14:14ID:AP2s4cWp
ifの中でifを使いたい場合ってどう書けばいいんでしょか?
0692名前は開発中のものです。04/05/22 14:23ID:Idk7kY4v
a = 0
b = 0
if a = 1{
if b = 1{ mes "TRUE and TRUE" } else { mes "TRUE and FALSE" }
} else {
if b = 1{ mes "FALSE and TRUE" } else { mes "FALSE and FALSE" }
}
stop
0693名前は開発中のものです。04/05/22 14:24ID:+J9AvGEZ
>>691
if (条件式) {
  if (条件式) {
  }
}
0694名前は開発中のものです。04/05/22 14:44ID:AP2s4cWp
>>692
>>693
thx..
069565904/05/22 19:52ID:UoLTjU62
質問です。
ボタンをクリックするとa+1するようにしたいのですがどうすればよいでしょうか?
0696名前は開発中のものです。04/05/22 20:34ID:R5OhOSlA
button "bbb",*b
stop

*b
a++
title "a="+a
stop
069765904/05/22 20:53ID:UoLTjU62
>>696
そうではなくボタンクリックで直接+1するようにしたいのですが・・・
0698名前は開発中のものです。04/05/22 20:54ID:Idk7kY4v
>>697
どういうこと?
0699名前は開発中のものです。04/05/22 20:55ID:k1mVWFJo
頭悪いこと言ってないで、自分でボタン作りなさい
070065904/05/22 20:56ID:UoLTjU62
>>698
button "bbb",a+1
こんな風にしたいんですが、実際はできないようなので、どうにかなりませんか?
0701名前は開発中のものです。04/05/22 21:00ID:Idk7kY4v
>>700
どうにもなりません。
070265904/05/22 21:00ID:UoLTjU62
>>701
そうですか
0703名前は開発中のものです。04/05/22 21:01ID:QIB7NWXd
意味不明
0704名前は開発中のものです。04/05/22 21:34ID:k1mVWFJo
Ver2.61RC2が出とる
0705名前は開発中のものです。04/05/22 22:02ID:Z1wRA776
牡丹と薔薇は〜♪どちらが幸せ〜♪
0706名前は開発中のものです。04/05/22 23:42ID:kPBNgTxY
ちょっと質問なんですが、公開されてるリージョン画像作りだすプラグイン使って
パラパラアニメの要領で次々に画像切り替えてはリージョン画像作りだすソフト作ったんですが
これを動かした時にHSPを起動させてスクリプトを書く黒い画面を表示させてると画像の端に白いフチが出来る。
壁紙を真っ黒な奴にしても出ないのに何故かHSPの画面をバックにすると出るんですよ。
HSPの画面ってただの真っ黒い画面に見えるけど何かやってる?常に更新し続けてるとか?
0707名前は開発中のものです。04/05/23 01:02ID:JfHx0bW0
HSPって

if(a=1)
{
mes"test"
}

こういう書式で書けないのか・・・
ifの条件式の直後に{書くの好きじゃないんだよな・・・
0708名前は開発中のものです。04/05/23 09:49ID:0MNtEX/6
でも僕もbuttonからラベルジャンプじゃなくて直接命令が出来たらいいと思うことはある。
多分なんか問題があるんだろうけど。
0709名前は開発中のものです。04/05/23 09:55ID:Z1lcpfE7
コールバックなんてそんなもんでしょ
071065904/05/23 13:07ID:EhKKz116
aの数値が1だったらグー
aの数値が2だったらチョキ
aの数値が3だったらパー
と表示したい場合、どうすれば良いのですか?
0711名前は開発中のものです。04/05/23 13:12ID:qh8DbMvd
if a=1 *gu
if a=2 *tyoki
if a=3 *pa
stop
*gu
ぐーを表示
stop
*tyoki
ちょきを表示
stop
*pa
ぱーを表示
stop
071265904/05/23 13:24ID:EhKKz116
ありがとです
0713名前は開発中のものです。04/05/23 13:43ID:5EkJbtd8
659は結局自分では何も考えずに
このスレの住人に全部作ってもらうつもりか?
BASICかじってたなら、変数と if文くらい使えそうなもんだが
0714名前は開発中のものです。04/05/23 15:46ID:ATgfMPsU
>>710
グー・チョキ・パーを横にならべた画像を用意
x座標を幅の変数倍ずらしてコピー

配列をうまく使うとifを使わない短いソースで書ける
#ただし可読性は落ちる
0715名前は開発中のものです。04/05/23 17:30ID:0MNtEX/6
>>711でOKの問題だったら、HSPに入ってる初心者のためのHSP入門読めば分かるじゃねぇか。
小学生だな?
俺も小学生の頃は"が打てなくて入門さえ断念した記憶がある。中学に入る頃は打てるようになったが。
071665904/05/23 18:24ID:EhKKz116
mes "じゃんけんゲーム"
*Selection
himself=0:enemy=0
mes "何をだすか選んでください。"
pos 0,80
button "グー",*g
pos 70,80
button "チョキ",*c
pos 140,80
button "パー",*p
stop
*g
cls
himself+1
goto *enemy2
stop
*c
cls
himself+2
goto *enemy2
stop
071765904/05/23 18:26ID:EhKKz116
*p
cls
himself+3
goto *enemy2
stop
*enemy2
gettime enemy,7
enemy=enemy/400+1
if himself=1:mes "あなたはグーを出しました。"
if himself=2:mes "あなたはチョキを出しました。"
if himself=3:mes "あなたはパーを出しました。"
if enemy=1:mes "敵はグーを出しました。"
if enemy=2:mes "敵はチョキを出しました。"
if enemy=3:mes "敵はパーを出しました。"
if himself = enemy :mes "あいこです。"
goto*Selection
stop
ここまで作ったんですが、条件式だけだと"勝ち"と"負け"までは決められなそうなんで>>714さんの書き込みを参考に作り直してみます。
>>715
OKじゃないし厨房ですが、書く文章が小学生並みなので「そういう事を聞いてんじゃない!」
なんて書くとまた怒られたりしそうなんで
0718名前は開発中のものです。04/05/23 18:32ID:vgxi9T0O
俺は小学校時代は頭がよかったんだなあ。
0719名前は開発中のものです。04/05/23 19:30ID:0MNtEX/6
>>714じゃ余計勝敗は無理だろうな。
0720名前は開発中のものです。04/05/23 19:34ID:Fkppfkyn
if himself = enemy :mes "あいこです。"
if (himself=1)and(enemy=2):mes "あなたの勝ちです。"
if (himself=1)and(enemy=3):mes "あなたの負けです。"
if (himself=2)and(enemy=1):mes "あなたの負けです。"
if (himself=2)and(enemy=3):mes "あなたの勝ちです。"
if (himself=3)and(enemy=1):mes "あなたの勝ちです。"
if (himself=3)and(enemy=2):mes "あなたの負けです。"
0721名前は開発中のものです。04/05/23 19:46ID:SSNSRIM2
sdim result, 7, 3: result = "あいこ", "負け", "勝ち"
sdim hand, 7, 3 : hand = "グー ", "チョキ", "パー "
mes "あなた  相手"
repeat 9
a = cnt / 3 ; 0:グー 1:チョキ 2:パー
b = cnt \ 3 ; 同上
c = a-b+3\3 ; 差から結果を求める
mes hand.a+" vs "+hand.b+" → "+result.c
loop
stop
0722名前は開発中のものです。04/05/23 20:39ID:0MNtEX/6
先生!僕も>>659さんに触発されてじゃんけんゲームを作りました!
是非最後まで遊んでみてください!特に>>659さんに!
ttp://gamdev.org/up/img/608.zip
072365904/05/23 20:53ID:EhKKz116
>>720
条件式を増やすこともできるんですね。
とても参考になります。ありがとうございました。
>>721
凄い・・・と思うんですが、僕にはうまく理解できませんでした。
短くするとなるとやっぱり内容が難しくなるんですね・・すいません。
>>722
・・・・・・・・
いや、面白かったよ。普通にw
0724名前は開発中のものです。04/05/23 21:37ID:kLAO5Vbc
前スレで課題出されたときに作った奴でも張ってみるか。

screen ,64,72
randomize

button "グー",*judg
button "チョキ",*judg
button "パー",*judg

sdim hand, 7, 3
hand = "グー","チョキ","パー"
*re
rnd ene,3
stop
*judg
if(stat-ene==0) {message="あいこ": goto *@f}
if((stat-ene==-1) || (stat-ene==2)) {message="勝ち": goto *@f}
if((stat-ene==-2) || (stat-ene==1)) {message="負け": goto *@f}
*@
dialog "自分:"+hand.stat+"\n相手:"+hand.ene+"\n"+message+"です",0,"結果"
goto *re
stop
0725名前は開発中のものです。04/05/24 08:41ID:zGYeQlqs
>>722
じゃんけんというか
3パターンの・・・
0726名前は開発中のものです。04/05/24 14:51ID:x+eeLccx
☆★☆★ 日本語プログラミング言語『ひまわり』 ☆★☆★

日本語で『こんにちはと、言う。』と入力すれば
ダイアログに『こんにちは』と出るプログラミング言語登場!!
PNGもサポートしてるので、かなりおすすめです!!
また、【『http://www.xxxx.xx/』を、『index.htm』へ、HTTPダウンロード。】
とすれば自動的にダウンロードできる優れ物です!!

↓日本語プログラミング言語『ひまわり』
http://hima.chu.jp/index.htm
↓日本語プログラミング言語『ひまわり』スレッド
http://pc5.2ch.net/test/read.cgi/tech/1083053283/l50
0727名前は開発中のものです。04/05/24 15:03ID:oMZF01wY
 
 
 
 
      ま  た  ひ  ま  わ  り  か  。




0728名前は開発中のものです。04/05/24 16:04ID:OWj17g2h
☆★☆★ ビジュアルプログラミング言語『Delphi』 ☆★☆★

ツールバーでコンポーネントを選んでフォームに配置していけば
簡単にGUIアプリケーションを作れるプログラミング言語登場!!
JPEGもサポートしてるので、かなりおすすめです!!
また、【IdHTTP.Get('http://www.xxxx.xx/index.htm');】
とすれば自動的にダウンロードできる優れ物です!!※1

↓ビジュアルプログラミング言語『Delphi6 Personal Edition』
http://www.borland.co.jp/delphi/personal/
↓ビジュアルプログラミング言語『Delphi』
http://pc5.2ch.net/test/read.cgi/tech/1083053283/l50
0729名前は開発中のものです。04/05/24 16:40ID:xLd83XnE
本家ヒドすぎ。あんまオニタマに迷惑かけんなよ。
0730名前は開発中のものです。04/05/24 17:26ID:1CA+dbww
さて、あなたに本家からここへ誘導する勇気はありますか?
0731名前は開発中のものです。04/05/24 17:45ID:Pq9YHV4o
>>730
ここじゃなくてム板の方な。
0732名前は開発中のものです。04/05/24 17:46ID:npejv8oY
「格闘ゲームの作り方を教えてください」とかおにたまに
メール出す奴いるんだろうな…。
0733名前は開発中のものです。04/05/24 17:54ID:Pq9YHV4o
>>732
だろうな。
それに加えウィルスメールやジャンクメールも来るんだから、凄い量なんだろうな。
ただでさえ忙しいのに、それで5日レスなかったくらいで騒ぐのもちょっとあれだと俺は思う。
0734名前は開発中のものです。04/05/24 19:18ID:1CA+dbww
>>732-733
おにたま氏も会社を設立してバイトでも雇わないといけないレベルになったりしてな。
でも無料だから無理なんだよな。おにたま氏も大変だな・・・。
0735名前は開発中のものです。04/05/24 20:39ID:npejv8oY
おにたまタンも、気に入らなければ使わなくて結構、くらいも言ってやればいいのにな。
義務とかほざいてる勘違い小僧はいったい何様だ。
0736名前は開発中のものです。04/05/24 20:58ID:8oxO2+jv
HSPのことを否定するつもりもないし、立派な言語だと思うけど、HSPが厨言語と言われる由縁がわかった気がした。
HSP使ってる人、がんばれ。馬鹿に負けるな。おにたま氏もがんばれ。
HSPユーザじゃないけどできることがあったら手伝うよ。
0737名前は開発中のものです。04/05/24 21:17ID:GTVh4I4h
HSP糞
0738名前は開発中のものです。04/05/24 21:22ID:U1TwhzCj
お前ら、ここはゲーム製作板ですよ?
0739名前は開発中のものです。04/05/24 21:28ID:ZMrgJPYB
趣味でゲーム作るならHSPで十分だな。
0740名前は開発中のものです。04/05/24 21:33ID:ghvbhkGh
ム板ってなんですか?
どこにあるのですか?
074165904/05/24 21:36ID:gg7ZH38J
score=1000
mes "じゃんけんゲーム"
*Selection
himself=0:enemy=0
mes "何をだすか選んでください。"
pos 0,80
button "グー",*g
pos 70,80
button "チョキ",*c
pos 140,80
button "パー",*p
pos 0,120
mes "いくら賭けますか?"
input kake
mes "現在の所持金"+score+""
stop
*g
cls
himself+1
goto *enemy2
stop
*c
cls
himself+2
goto *enemy2
stop
*p
cls
0742名前は開発中のものです。04/05/24 21:40ID:oMZF01wY
つーか本家に掲示板あるのがまず間違い。
って、板違いレススマソ。
074365904/05/24 21:41ID:gg7ZH38J
*g
cls
himself+1
goto *enemy2
stop
*c
cls
himself+2
goto *enemy2
stop
*p
cls
074465904/05/24 21:41ID:gg7ZH38J
himself+3
goto *enemy2
stop
*enemy2
if kake>score: mes"所持金足りないですよ・・・"goto*Selection
gettime enemy,7
enemy=enemy/400+1
if himself=1:mes "あなたはグーを出しました。"
if himself=2:mes "あなたはチョキを出しました。"
if himself=3:mes "あなたはパーを出しました。"
if enemy=1:mes "敵はグーを出しました。"
if enemy=2:mes "敵はチョキを出しました。"
if enemy=3:mes "敵はパーを出しました。"
if himself = enemy :mes "あいこです。"
if (himself=1)and(enemy=2):mes "あなたの勝ちです。":score+kake*2
if (himself=1)and(enemy=3):mes "あなたの負けです。":score-kake
if (himself=2)and(enemy=1):mes "あなたの負けです。":score-kake
if (himself=2)and(enemy=3):mes "あなたの勝ちです。":score+kake*2
if (himself=3)and(enemy=1):mes "あなたの勝ちです。":score+kake*2
if (himself=3)and(enemy=2):mes "あなたの負けです。":score-kake
if score<1 :mes "所持金が無くなりました・・・":wait 200:end
goto*Selection
stop
テキストボックス内に、数字以外の文字を入力すると警告等が出るように設定したいのですが、どうしたら良いでしょうか?
0745名前は開発中のものです。04/05/24 21:47ID:1CA+dbww
if kake<1 : エラー
ダメか?
0746名前は開発中のものです。04/05/24 21:58ID:FJunE+hK
>>744
HSPだとめんどくさい。
結果だけで判断するならまだ楽だが、
入力できないようにするようにするには。
アップダウンボタンでも使えば?
■ このスレッドは過去ログ倉庫に格納されています