1 名前:名前は開発中のものです。 mailto:sage [2006/03/24(金) 18:31:39 ID:jNg23CIj] ( ,,,) .( ,,) スクリプト言語 HotSoupProcessor について ( ,,). ゲーム製作の視点から、また〜りと語り合うスレ。 , -──- 、 (,;::-──-; )-、 .|` ̄ ̄ ̄´;;|ヽ l * 質問する前に検索してみる事 l; :::;;;l-' / * ヲチ、ネタなどはスレ違い ,-ヽ───.'-、´.. * 歴代スレ、関連サイトは >>2-4 あたり ヽ ──── ' ONION software (本家) www.onionsoft.net/
355 名前:名前は開発中のものです。 mailto:sage [2006/05/06(土) 03:24:48 ID:K7OHaGy8] >352 mp3の読み込みを色々試して見たんだけど容量も関係ないっぽい 高音質で容量多いファイルでも成功したり低音質低容量でも失敗したり基準がまったくわからない 圧縮方法とかが影響してるんだろうか
356 名前:名前は開発中のものです。 mailto:sage [2006/05/06(土) 07:26:20 ID:a1w441c6] VBR/CBRは?
357 名前:名前は開発中のものです。 mailto:sage [2006/05/06(土) 15:47:48 ID:K7OHaGy8] >356 どっちでも関係ないっぽい Rip!AudiCOFREEVer使って自分でWAVEからエンコードしてみたけどどうもこのソフトを使った場合どうやっても再生できないっぽいな 最低音質CBRで800kbyteのファイルでも読み込み失敗するし
358 名前:ウル [2006/05/06(土) 22:53:08 ID:Xr/95anG] ギャルゲーの文字みたくコメントでるようなのが作れない…
359 名前:名前は開発中のものです。 mailto:sage [2006/05/06(土) 23:40:41 ID:fcUS86uL] 日本語でおk
360 名前:ウル [2006/05/07(日) 00:17:16 ID:5kUdwmnH] アニメーション作りかたがいまいちわからない画像をただうえからしたまで下げるだけなんだがヘルプミーですトホホ
361 名前:名前は開発中のものです。 mailto:sage [2006/05/07(日) 00:23:04 ID:uvZU3z/E] まず句読点や助詞の使い方を覚えろ。 ギャルゲー話題にするってことは少なくとも高校生以上だろうとは予想されるが、 それにしては書き込みが頭悪すぎるぞ。 ゲームばかりやってないで本を読め。
362 名前:名前は開発中のものです。 mailto:sage [2006/05/07(日) 04:03:28 ID:lpBFthLR] 高校生とは限らんぞ 俺なんかリア厨のとき天使たちの午g(ry
363 名前:名前は開発中のものです。 mailto:sage [2006/05/07(日) 07:56:33 ID:EqYY0bCT] オープンソースがバージョン2では使えるのに、 バージョン3では使えなくなるんですが、 原因はなんでしょうか?
364 名前:名前は開発中のものです。 mailto:sage [2006/05/07(日) 10:03:56 ID:zxzkRbBe] ソース自体がver.3に対応してないんじゃね?
365 名前:ウル [2006/05/07(日) 11:23:27 ID:5kUdwmnH] スマソ 文字の画像でアニメショーン作ったら画像が切れた
366 名前:名前は開発中のものです。 mailto:sage [2006/05/07(日) 16:31:33 ID:uvZU3z/E] >>362 そして人生の斜陽を歩k(ry
367 名前:名前は開発中のものです。 mailto:sage [2006/05/08(月) 00:06:19 ID:CcUYgY2x] すみません。sndloadでmpegムービーを読み込んでsndで再生する方法を採るとめっちゃ重くてタイトルバーをちょっとつまんだだけで固まったりしちゃうんですけど 何か軽快にムービーを再生できるような方法もしくはプラグイン等はないものでしょうか。 よろしくお願いします。
368 名前:名前は開発中のものです。 mailto:sage [2006/05/08(月) 00:46:00 ID:lUlHF7Gx] >>367 つ [HSP3 mmload]
369 名前:名前は開発中のものです。 mailto:sage [2006/05/08(月) 09:55:17 ID:CcUYgY2x] 2.61使ってるんですけどなんとかなりませんか…。
370 名前:名前は開発中のものです。 mailto:sage [2006/05/08(月) 12:53:51 ID:A+kJaSxb] >>369 www.onionsoft.net/hsp/beta/betabbs.cgi 過去ログ3を「動画再生」で検索したらそれっぽいのが出るかと。 hmm.dllがいいらしい。DirectShow使えるプラグインなら何でもいいとは思うが。
371 名前:名前は開発中のものです。 mailto:sage [2006/05/08(月) 13:28:38 ID:CcUYgY2x] ありがとうございます。早速確認してみます。
372 名前:名前は開発中のものです。 mailto:sage [2006/05/09(火) 16:35:20 ID:COdoO+GV] ttp://null.main.jp/kouza/shokyu12.html コチラで解説しているとおりにやってみたのですが、 「#Error 38 -->内部でエラーが発生しました(38)」 と表示され、正しいexeファイルが作れません。 使っているdllはHSPDirectSoundExtensionのみなのですが、何か特別な作業が必要なのでしょうか?
373 名前:名前は開発中のものです。 mailto:sage [2006/05/09(火) 21:19:14 ID:UQtf+Kro] >>372 38 "外部DLLの呼び出しに失敗しました" 外部DLLの関数呼び出しの先のアドレス取得に失敗した場合に表示されます。 だそうだ。 dsoundex.hpiが無いんジャマイカ
374 名前:名前は開発中のものです。 mailto:sage [2006/05/09(火) 21:39:45 ID:N1aA8dwP] だな。取敢えず、作った実行ファイルと同じフォルダにDLLをコピーしてみそ。>372
375 名前:名前は開発中のものです。 mailto:sage [2006/05/10(水) 00:26:47 ID:C86KZ1rA] >>371 ですが実際hmm.dllを試してみたところ本当に期待通りの効果をあげることができました。どうもありがとうございました。
376 名前:名前は開発中のものです。 mailto:sage [2006/05/12(金) 12:42:52 ID:lpPbttQ8] >>373 >>374 レス遅れて申し訳ありません。 dsoundex.hpiも必要だったんですね。 ありがとうございました。
377 名前:名前は開発中のものです。 [2006/05/13(土) 00:38:25 ID:/E17UIpq] Ver2.61で「複数のテキストファイルをexeに組み込むと繋がっちゃう」不具合は修正されていますか?
378 名前:名前は開発中のものです。 mailto:sage [2006/05/13(土) 12:19:38 ID:U+Cj0aWf] >>377 知るか
379 名前:名前は開発中のものです。 mailto:sage [2006/05/13(土) 12:59:39 ID:8VtsEFGN] >>377 以前のバージョンの話は知らんが、少なくとも261では繋がらんぞ? つーか、んなの聞くより自分で確かめた方が早いだろ
380 名前:名前は開発中のものです。 mailto:sage [2006/05/13(土) 16:27:37 ID:0+OIs3vl] >>377 もういりませんって言ってるだろ。いい加減にしろ
381 名前:名前は開発中のものです。 mailto:sage [2006/05/13(土) 17:13:05 ID:4EGyUu/C] ?
382 名前:名前は開発中のものです。 mailto:sage [2006/05/14(日) 02:26:56 ID:JvlyfUtz] 別なファイルを同じ変数に読み込んでるとかじゃねぇだろうなw
383 名前:名前は開発中のものです。 mailto:sage [2006/05/19(金) 08:38:46 ID:4OLVW9Eb] SHADEや六角等で作った3Dモデルをテクスチャ付いたまま 読み込む事ってできないのでしょうか? HSPでまたテクスチャ張りなおすのはあまりにも辛いのですが。
384 名前:名前は開発中のものです。 mailto:sage [2006/05/19(金) 11:17:10 ID:4+hflT16] >>383 プラグインによるけど、Xファイルなら、そのまま使えるし、プラグイン独自形式にも変換するツールがある Easy3Dなら六角大王ファイルも変換して使える
385 名前:名前は開発中のものです。 mailto:sage [2006/05/21(日) 02:54:01 ID:lR5GLbKN] HSP3は実数を整数より左に書かなくちゃいけないという制約があるせいで 今この変数は実数なのか、整数なのかって意識しながら1行1行書かなきゃ らならん。薄氷を踏む思いだ。やってられん。なんでこんな変な仕様に したんだろ。
386 名前:名前は開発中のものです。 mailto:sage [2006/05/21(日) 15:10:07 ID:WH/D3RVY] そういう仕様じゃないと文字列に数値を連結できなくなるから。
387 名前:名前は開発中のものです。 mailto:sage [2006/05/21(日) 19:18:10 ID:7IQM+URD] >>386 またまた、ご冗談を・・・
388 名前:名前は開発中のものです。 mailto:sage [2006/05/21(日) 19:31:40 ID:QeKgHpXS] なんつーか実数なんて使わんなぁ <<16で馴れちゃってるから。 3D使うなら必須なんだろうけどさ…
389 名前:名前は開発中のものです。 mailto:sage [2006/05/22(月) 08:27:57 ID:9I6/KX3Q] >>385 おにたまの実力不足です。 実数が3で入っただけでも奇跡と思って諦めて他の言語を習得しましょう。
390 名前:名前は開発中のものです。 mailto:sage [2006/05/23(火) 12:07:38 ID:hjOPS5XU] 例えば変数aに "testval = 123" と代入しておいて その値を条件式としてどうにかしてifみたいな感じで使うことは可能? if a : … を if testval = 123 : … という風にみなしてほしいんだけど…。 何がしたいのかっつうと スクリプトを別ファイルに書いてて スクリプト内に複数の「イベント」とそのイベントを実行する条件式を書いておいて ループ毎にメモリノートパッドに代入した条件式が書いてある行を見に行って評価したい ってことなんだが多分難しいんだろうな…。
391 名前:名前は開発中のものです。 mailto:sage [2006/05/23(火) 13:12:45 ID:7vomvTXy] >>390 前半部分のは良い方法を思いつかないけど、後半部分の件。 自分も今、そういうの作ろうとしてるけど、ポインタの考え方の応用というか、 変数の参照を、名前でなく、引数を通して間接的に参照するようにしたら 比較的簡単に実装できそうだなとか考えてる。 testHP = parm(1) testMP = parm(2) みたいな。
392 名前:名前は開発中のものです。 mailto:sage [2006/05/23(火) 15:37:55 ID:72LEgXLd] 327氏のようにプラグインをサブフォルダにまとめて格納したいんですが、 どうすれば良いのでしょうか。 #regcmdってのを使ってみたんですが、出来ることは出来るんですが 最初に変なエラーが出てしまって…。
393 名前:名前は開発中のものです。 mailto:sage [2006/05/23(火) 16:24:20 ID:1sE/IBhR] >>390 (ガンビットみたいなのをやりたいんかな?) 別ファイルの内容をメインのプログラムで 決まった書式で書くんならできるだろうね っていうか、ループごとにメモリノートパッドを 読みにいくのは効率が悪いんじゃ? セーブロードの時以外は条件や行動を 配列の中に取っておけばいいだけだし
394 名前:391 mailto:sage [2006/05/23(火) 16:44:08 ID:hjOPS5XU] レス有難う。 >>390 やはりそれしかないっすかね。 正直管理がマンドイ… >>393 ガンビット…わからなかったのでググってみたけどFF12ですかね? あーいうのじゃなくて、シナリオデータとして ----- evenum 50 ;イベントナンバー50 condition charaLP < 100,sys_time < 60000 ;キャラのLPが100未満かつ残り時間60秒未満 message "万事休すか…!" ;メッセージ表示 eveend ;イベントナンバー50ここまで ----- みたいなものを複数作っていて、 condition行に書いた条件式が満たされたら その下のmessage行にジャンプして、 各行を解釈しながらイベントを進行させる…っていうのがやりたいと思ってる。 メモリノートパッドについては考えてみます(´Д`;)
395 名前:394 mailto:sage [2006/05/23(火) 16:45:21 ID:hjOPS5XU] やべぇ、名前欄もレス番もずれてるorz 名前 391 → 390 × >>390 → ○ >>391 スマソ('A`)
396 名前:名前は開発中のものです。 mailto:sage [2006/05/23(火) 16:54:47 ID:qykXFuzk] evalとかそんな話じゃないのかね。 HSPなら中間コードみたいなのに変換しておけばできそうな気がしないでもないが。
397 名前:名前は開発中のものです。 mailto:sage [2006/05/23(火) 17:25:50 ID:jLJPB5NB] >>392 .ASファイルを直接編集 HSPDXFIX.ASなら #uselib "hspdxfix.dll" を #uselib "bin\\hspdxfix.dll" もっとスマートなやり方があるかも知れないけど ヘルプに >EXEファイル作成の際にPACKFILEに入れて、1つのEXEファイルにすることはできません。拡張プラグインを使用するEXEファイルを作成した場合は、EXEファイルと同じディレクトリに拡張プラグインを置いてください。 って、あるから仕様外になるのかも・・・
398 名前:名前は開発中のものです。 mailto:sage [2006/05/23(火) 17:34:14 ID:1sE/IBhR] >>394 instr,strmid,getstrとかで 行ごとにどんな文字列があるか調べて、それによって 文字列を分解して変数に格納したり、処理を変えたりしたらいいんでない? if instr(text,0,"condition") ! -1{ めんどいので略w } とかな感じで あと、そういうのならメモリノートパッドでいいと思う
399 名前:392 mailto:sage [2006/05/23(火) 18:13:22 ID:72LEgXLd] >>397 上手くいきました。 ありがとうございました〜。
400 名前:名前は開発中のものです。 mailto:sage [2006/05/23(火) 18:50:44 ID:9gWOI92g] HSPで簡易インタプリタつくりゃいいじゃなーい
401 名前:ホスプロ ◆HOTsoUpxjY mailto:sage [2006/05/24(水) 00:21:07 ID:Dd1350vL] >>390 if a(0) = a(1) : … 二つに変数を分解すれば簡単。 「testval」とか連想配列にしたいなら#defineで代用。 もっと本格的にやりたいならinterpreterパターンで。
402 名前:ホスプロ ◆HOTsoUpxjY mailto:sage [2006/05/24(水) 00:23:27 ID:Dd1350vL] あ、HSP3だと連想配列できるんだった。 a(testval)=123:if a(testvar)=123:mes "a"
403 名前:名前は開発中のものです。 mailto:sage [2006/05/24(水) 01:56:40 ID:lPK/et8b] クラスも無いHSPでインタプリタパターン?アホか。 インタプリタパターンがどんなものかも分かってない低脳が知ったかかよ。 笑えるw
404 名前:名前は開発中のものです。 mailto:sage [2006/05/24(水) 19:37:22 ID:8XIyjfCU] >>402 >a(testval)=123:if a(testvar)=123:mes "a" それは笑うところ?
405 名前:名前は開発中のものです。 mailto:sage [2006/05/24(水) 19:59:38 ID:pl7huDAQ] HSP3の連想配列ってどうやって使うの ヘルプに載ってないし… 単に a("test")=10 などとしてもエラーになるだけだし。
406 名前:名前は開発中のものです。 mailto:sage [2006/05/24(水) 20:48:21 ID:zlyvM6ck] >>405 未実装だ。HSP3公開時に公式に載ってたぞたしか
407 名前:名前は開発中のものです。 mailto:sage [2006/05/24(水) 21:20:01 ID:pl7huDAQ] HSP3には馴れてないからえっ連想配列使えるの?と >>394 用のサンプルを連想配列用に書き直したのに。 もう一回書くわ('A`)
408 名前:名前は開発中のものです。 mailto:sage [2006/05/24(水) 22:22:38 ID:pl7huDAQ] condition charaLP,<,100 --------------------- *命令処理ルーチン ;notegetとgetstrを駆使して、命令名と引数を分解。 ;変数funcに命令名を、変数p1〜に引数を格納 if func="message" :gosub *message if func="condition" :gosub *condition : return --------------------- *condition *@b if p1="charaLP" :i=charaLP ;ゲーム内の変数分だけ用意する if p1="charaMP" :i=charaMP if p1="sys_time" :i=sys_time : c_val=0 :x=0+p3 if p2=">" :c_val=i>x if p2="<" :c_val=i<x : if c_val=0 :return ;最終的にc_valが1なら成り立つ ;if p4!="" :p1=p4: p2=p5: p3=p6: goto *@back でもう一回条件判断 return 成り立たなかったら、 シナリオ行を+=1し、飛ばすなり何なり汁
409 名前:名前は開発中のものです。 mailto:sage [2006/05/24(水) 23:42:34 ID:YrDohqbw] ホスプロはNG推奨だなこりゃ
410 名前:名前は開発中のものです。 mailto:sage [2006/05/24(水) 23:53:18 ID:Dtzdxlr4] if文を羅列するよりは、 "message" → cmd=1 "condition" → cmd=2 といった感じに、前処理で命令と引数を整数化して on cmd goto 〜 で処理するほうが良いかと。
411 名前:名前は開発中のものです。 mailto:sage [2006/05/25(木) 22:58:38 ID:DTI3us1a] レーザー表示テストの者です。飽きずにまだいじってます。 先月末にupして見てもらったものは、 何時間動かしてもOS停止には至らず、結局、原因が掴めなかったため あやしそうな部分を探して、見込みで修正してみました。 そのほか、動作環境を限定するかもしれない追加や変更が いくつか加わりましたので、動作確認におつきあいいただける方、 よろしくお願いします。また不具合ありましたら、お教えください。 exxq.hp.infoseek.co.jp/lab/IBss20060525.jpg exxq.hp.infoseek.co.jp/lab/iyabomb_060525a.zip いま少し話題になってるようなことも、いくらか取り入れております。
412 名前:394 mailto:sage [2006/05/25(木) 23:14:40 ID:c1auN3wV] やっと来れました(´Д`;) >>408 をを、わざわざソース有難うございます。 >>410 アドバイス有難うございます。 ちょっくらデータを整えて、やってみたいと思います。 他の皆様も、いろいろ有難うございました。 やってみたらまた顔出します。
413 名前:411 mailto:sage [2006/05/25(木) 23:51:16 ID:DTI3us1a] すみません。23:36以前のexeファイルはボス撃破後にデータ不足で エラー終了してしまいます。 タイムスタンプが23:37以降ならば修正版です。
414 名前:名前は開発中のものです。 mailto:sage [2006/05/26(金) 00:43:09 ID:untIOqVh] 中間コード ( #define CMD_MESSAGE 1 if func="message" :cmd=CMD_MESSAGE など ) を作ろうと思ったら文字列比較は結局必要になるよ。 そのほうがオリジナルスクリプト上では messageはmessageのままで良いので可読性も上がる。 STG程スピードを要求しないなら文字列比較のままでも良いけど。
415 名前:名前は開発中のものです。 mailto:sage [2006/05/26(金) 03:37:37 ID:oDpShfW3] ;---準備段階 sdim funcstr , 3000 funcstr="nop______message__conditionif_______go_______to_______goto_____gosub____" ;(この場合、命令名の最長文字数が 9なので、他の命令の並びもそれに合わせる) ;(html中だと半角スペースが飛ぶので、代わりに'_'で埋めてあります。) ;---デコード func="goto" cmd=instr( funcstr , 0 , func ) / 9 mes "\""+func+"\" → "+cmd /* データを作成する人間が、命令名を正しく入力しなければいけなかったり、 "goto"に対する"go","to"のように、重複する文字列を含む場合、 funcstr中での並びに気をつけないといけない、などの前提がありますが 自分は、おおむね上記のような方法で数値にしています。 funcstr文字列の長さが短いほうが数値化する速度もあがるとみて、 各命令名を1〜3文字で済ませていますが。*/
416 名前:名前は開発中のものです。 mailto:sage [2006/05/26(金) 06:48:29 ID:onhecYlx] トークンの取得はCOMから正規表現使うと楽かも。 comtest8.hsp参照。
417 名前:名前は開発中のものです。 mailto:sage [2006/05/27(土) 13:47:27 ID:sKWqmida] HSP以外でやった方が楽かも
418 名前:名前は開発中のものです。 mailto:sage [2006/05/27(土) 14:56:48 ID:rRWFZuhB] >>417 それを言ったらおしまいだお
419 名前:名前は開発中のものです。 mailto:sage [2006/05/28(日) 10:16:28 ID:KPT5N766] MMORPGみたいに3Dゲームでマウスクリックでキャラ移動ができるようにする講座載せてるサイトとかありませんかね。 参考にできるならHSPでなくてもいいんですが。
420 名前:名前は開発中のものです。 [2006/05/28(日) 22:13:18 ID:KJFlJ4UI] 最近HSPを始めてみてスロットを作ろうと思ったのですが、行き詰まってしまったので 質問させていただきます。 ←↓→をおして1ラインのスロットを作ってみたのですが、3つとも停止しているのか いたら当たり判定へ飛ぶというところで行き詰まってしまいました。 よろしければヒントかなにか教えてください。
421 名前:名前は開発中のものです。 mailto:sage [2006/05/28(日) 22:55:23 ID:Z+CCHXYA] 左から、一つずつ、止まる仕様にしなさい。 そうすれば左から一つずつ処理して、残った分は、まだ止まってないって処理だけですむ。 一番簡単にするならこんなところかと。 それ以外はどれから止めるのか、で、個々に処理を分岐させていくようにルーチンプログラムを組むとか。 手間だけどw
422 名前:名前は開発中のものです。 mailto:sage [2006/05/28(日) 23:03:20 ID:pQPkynbl] >420 当たり判定が全てとまった時のみなら スロットを回した瞬間にrool=3 一つ止めるごとにroll-- rool=0の場合スロットが停止状態だから判定でいいんじゃないか?
423 名前:422 mailto:sage [2006/05/28(日) 23:05:06 ID:pQPkynbl] >422はスペルミスってるけどいじる変数は全部一緒ね
424 名前:名前は開発中のものです。 mailto:sage [2006/05/28(日) 23:26:30 ID:KJFlJ4UI] >>421 左から順押しは作れたのですが、ばらばらに押しても止めれるように できるやつを今作ってみています。 *start if st(0)=st(1) & st(2)=-99:goto *owari これが終わりへ飛ぶ処理 onkey gosub *inkey cls 0 for s,0,3,1 if cou(s)>9 :cou(s)=0 next font "MS ゴシック",70 pos 80,50:mes a(cou(0)) pos 180,50:mes b(cou(1)) pos 280,50:mes c(cou(2)) for s,0,3,1 if st(s)=-99:sp++:else:cou(s)++ next for s,03,1 if st(s)=-99:s wait 30 goto *start *inkey if iparam=49:st(0)=-99 if iparam=50:st(1)=-99 if iparam=51:st(2)=-99 return 2行目のやつを考えてみたのですけどもなかなか上手くいきません。 >>422 それでちょっと考えてみます。
425 名前:名前は開発中のものです。 mailto:sage [2006/05/28(日) 23:29:06 ID:KJFlJ4UI] 追記で a,b,cは1〜10のランダムの数字を入れて couっての要素番号です
426 名前:420 mailto:sage [2006/05/29(月) 00:08:36 ID:6gBWhafZ] 自己解決しました。板汚しすみませんでした
427 名前:名前は開発中のものです。 mailto:sage [2006/05/29(月) 00:42:52 ID:37tC2HAP] 0=0 & -99=-99 でも終了って事に気づいたか iparamとwparamの違いも >font
428 名前:名前は開発中のものです。 mailto:sage [2006/05/29(月) 00:45:09 ID:37tC2HAP] 聞き込みが途中で切れてる・・・ >font "MS ゴシック",70 これは最初に設定すればいい >onkey gosub *inkey メインループ前に一回実行するもの ここでは、キー入力を見てない その後のawait,stopでキーを見てる
429 名前:420 mailto:sage [2006/05/29(月) 00:54:36 ID:6gBWhafZ] できたとおもっていましたができていませんでした^^; f st(0)=-99 & st(1)=-99 & st(2)=-99 って風にしてできたと思ったんですけど無理でした・・・。
430 名前:名前は開発中のものです。 [2006/05/29(月) 01:09:48 ID:zRSJKdB1] 少しスレ違いかも知れませんが質問させてください。 今現在、HSPは特にゲームメーカーなどでプログラムとして使われて いるのでしょうか? それとも個人単位での作成範囲で留まっているのが現状でしょうか? なぜこれを聞いたかというと当方はVBでプログラムを初めて1〜2年は 修学して簡単なツールまで作れるようになったのですが間を開けて グラフィックの方に力を付けてきて今年になってHSP3.0の存在を知りHSPのゲーム作りには 特に短期でも仕上げれる特徴に魅力を感じVBを捨ててHSPを本格的に勉強し将来は職業でも 役に立ちたいと思っているので質問しました。長文ですが宜しくお願いします。
431 名前:名前は開発中のものです。 mailto:sage [2006/05/29(月) 01:45:04 ID:iN1PFDnA] >>430 HSP3は2.6までのプラグイン大部分が使えなくなった関係もありまだまだ普及途中な感じ。 仮想配列も未実装だしな >>402 HSP2.6でも趣味や同人のみでの範囲。 こういうのは就職には何の役にも立たんよ。 ツールが主ならVBの方が遥かにマシだし短期に仕上がるはず。 VB以上のモノに躊躇していたんでは職業プログラマには向いてないかも知れないし そもそもプログラマなんて好きこのんでやる仕事では…('A`)
432 名前:某作者 mailto:sage [2006/05/29(月) 01:57:44 ID:KfyOoN0T] >>420 まず状態フラグを以下の4つ作ります。 Flag1:左リールの状態 Flag2:中リールの状態 Flag3:右リールの状態 Flag4:ゲームの状態 1〜3は言わずもがななので言いませんが キモはFlag4にあります。 例えば、リールの回転開始時(1ゲーム開始時)に4をセット。 リールを止める毎に-1していくと全リール停止時には1になります。 そこで、メインループの中にでも if Flag4=1{ ここに全リール停止時に一回だけ実行したいコード Flag4=0 } とかってやると、全リール停止後一回だけ実行されるのでオススメ? 停止順にも左右されないし。 奥さん!どうですか? >>430 職業としてプログラミングをするのであれば HSPとかVBなんて何のハッタリにもなりません。 ただ、VCもそうですが プログラムというものの勉強にはなります。 作り方とか流れとかですかね。 どっち方面のプログラマになりたいのか分からないので オススメはコレってのは言えませんが やって無駄になるものでもないので 適当に遊んでみると良いカモ。
433 名前:名前は開発中のものです。 [2006/05/29(月) 03:54:45 ID:fslpirHT] >>430 某大学で用いられているという話はありますよ。 案外これから普及していくかもしれません。 ただ、C言語から作られているのでCを超える事は出来ないそうです。
434 名前:名前は開発中のものです。 mailto:sage [2006/05/29(月) 04:16:24 ID:37tC2HAP] >>426 そこはあってる font "MS ゴシック",70:dim st,10:dim cou,10 *start2 onkey gosub *inkey for s,0,10,1:a(s)=rnd(10):b(s)=rnd(10):c(s)=rnd(10):next *start if st(0)=-99 & st(1)=-99 & st(2)=-99:goto *owari cls 0 for s,0,3,1 if cou(s)>9 :cou(s)=0 next pos 80,50:mes a(cou(0)) pos 180,50:mes b(cou(1)) pos 280,50:mes c(cou(2)) for s,0,3,1 if st(s)=-99:sp++:else:cou(s)++ next wait 30 goto *start *inkey if iparam=49:st(0)=-99 if iparam=50:st(1)=-99 if iparam=51:st(2)=-99 return *owari for s,0,3,1:st(s)=0:next onkey 0:wait 100:onkey goto *start2 stop 一定の速度を保ちたいならonkeyは使わない方がいいかも、押されたら残りwaitが無視されるから
435 名前:名前は開発中のものです。 [2006/05/29(月) 14:45:27 ID:mlmmeZsG] >>419 つ本屋を散策
436 名前:名前は開発中のものです。 mailto:sage [2006/05/29(月) 15:47:14 ID:7r+bTq3U] >>411 何か爽快感あって面白いな すげー
437 名前:名前は開発中のものです。 mailto:sage [2006/05/29(月) 16:23:41 ID:OGKd9cQ0] >>411 おもしろすぎた
438 名前:名前は開発中のものです。 mailto:sage [2006/05/29(月) 18:02:05 ID:zP12sAa8] >>430 同人では結構あるみたいだけどメーカーが使うなんてありえない。だってフリーソフトだぜ? バグがあってもその製品のせいにされちゃう。原因を調べてHSPあるいはプラグインのせい だと分かっても直せとは言えない。それに、メーカーは実行速度のテストとかするんだぜ? なんでCとかでできるものを、わざわざインタープリタのHSPでやるんだよ。 あと、HSPってプロが使おうと思ったらやってられねえよ。 2.61:固定少数、演算子の優先順位なし 3:実数を整数より左に書かなくちゃいけないという変な仕様、if key&4!=0〜 ←バグる dim a(10,10):a(0,0)=1.23 ←バグる ぜひ面接で「使える言語は?」って聞かれて「HSPです」って答えてどうなったか報告して ほしい。
439 名前:名前は開発中のものです。 mailto:sage [2006/05/29(月) 18:18:00 ID:L4PQZedp] もともとHSPはWINDOWS用のフリーの開発言語としてすごい存在感があった。 2000年ごろまではフリーのBCCも無かったし、C#も。 フリーのゲーム開発用言語は日本語が使いにくいGCCか、HSPも含むいくつかの スクリプト言語しか選択肢がなかった。 でも内部でdirectxとかウインドウズの機能呼び出して、プログラムは スクリプト解析の部分だけなのにMicorsoftに怒られないんかなとか 昔から疑問だった。 C#がずっと商用でHSPがC#並みの強力な言語体系を身につけたらどうなったかしらんけど。
440 名前:名前は開発中のものです。 mailto:sage [2006/05/29(月) 18:23:49 ID:iN1PFDnA] >>438 優先順位とちゃうの if (key&4)!=0〜 実数の配列はこれ ddim > 実数を整数より左に書かなくちゃいけない 詳しく
441 名前:名前は開発中のものです。 mailto:sage [2006/05/29(月) 19:31:05 ID:mZy4WId+] プロが仕事で使うことはないだろうけど 趣味でなら使ってるかもしれんぞ
442 名前:名前は開発中のものです。 mailto:sage [2006/05/29(月) 19:31:59 ID:U5ucYwSu] >でも内部でdirectxとかウインドウズの機能呼び出して、プログラムは >スクリプト解析の部分だけなのにMicorsoftに怒られないんかなとか これはまた香ばしい釣りですね。
443 名前:名前は開発中のものです。 mailto:sage [2006/05/29(月) 19:35:27 ID:mZy4WId+] DirectXを使うのがなぜいけなのかな?
444 名前:名前は開発中のものです。 mailto:sage [2006/05/29(月) 20:07:36 ID:iN1PFDnA] 似たような問題無かったっけ…GIFとか
445 名前:名前は開発中のものです。 mailto:sage [2006/05/29(月) 21:40:11 ID:zEiBbzn5] >438 なるほど。桁数の大きい入れ物が左側になきゃいけないって ことでしょう。cだと左辺に合わせられるみたい。 double d=1.1234567; double d2=0.0; int i=10; d2 = i + d; printf("%f\n",d2); 実行結果は11.123457になる。 HSP3は本当は結果を入れる変数に合わせて計算のワークエリアを とればいいんだろうけど、計算式で最初に見つけた変数に 型を合わせちゃうんでしょう。だから小さい入れ物が最初に出てくると、 あとはそれに合わせて丸められてしまうと。 cでも左辺の型に合わせるっていま試してみるまで知らなかった。 HSP3でもこういう仕様だと理解すべきでしょう。
446 名前:名前は開発中のものです。 mailto:sage [2006/05/29(月) 23:32:03 ID:yl1v66tQ] >>441 フリーでやってる人が 仕事で使ってるってカキコをどっかで見たよ HSPでやった方が簡単な時だけだろうけどね
447 名前:411 [2006/05/30(火) 07:07:56 ID:wxU49lOI] >>436-437 動作確認ご協力ありがとうございます。 とりあえず動いているようで安心しました。 おそらく、ほとんどの人の場合、不具合が発生しても、 自分の環境のほうに問題があると考えてしまって、 報告をあげてもらうまでに至らないことが多いと思いますが、 不具合の報告をしてもらって、その原因が判明した場合は、 (>>318-322 のように)環境依存度の高い処理の情報を共有できる─などの、 有意義な展開が期待できますので、 不具合発生している方おられましたら、よろしくお願いします。 スキル・知識等の不足により、解決できない場合が多いかもしれませんが ;- -)
448 名前:430 [2006/05/30(火) 16:36:03 ID:7Q/mYcoo] 遅レスですが予想以上に数々の親炙な返事をありがとうございます。 みなさんの返事では職業的に使えるどうかは概ね厳しい意見なので、まずは 趣味範囲でもHSPを学んでいこうと思います。何よりコンテストやユーザー同士の 情報交換がプログラムでここまで分かりやすく多種多様活性化しているのは 稀なので励みになります。では
449 名前:名前は開発中のものです。 mailto:sage [2006/05/30(火) 22:23:56 ID:eOXJS/M0] 知らない言語や開発環境の初心者向けサイトを 時々でいいから、見てみるといいかもね 趣味の範囲に限るんなら 何かに行き詰るまでHSPでいいと思うけど
450 名前:名前は開発中のものです。 mailto:sage [2006/05/31(水) 01:00:06 ID:XX1BOmA9] >445 >cだと左辺に合わせられるみたい。 何言ってんだお前。 Cでは整数と浮動小数点数の四則演算は、整数が左辺、右辺どちらにあろうと、 整数が浮動小数点数に変換されて計算されるんだよ。 どんな実験したら左辺の型にあわせられるとかアホな結果を導き出せるんだよ。
451 名前:名前は開発中のものです。 mailto:sage [2006/05/31(水) 01:32:05 ID:PVRo+RDd] 気になったんだが、HSPって優先順位無しにまだ左から順番に計算処理してんの? だとしたら、相当タコな仕様なんだが。
452 名前:名前は開発中のものです。 mailto:sage [2006/05/31(水) 01:38:06 ID:Z8BdWCCn] >>451 HSP3から優先順位は付いた てか、括弧つければいいやん
453 名前:名前は開発中のものです。 mailto:sage [2006/05/31(水) 01:52:55 ID:qtTLD7x5] 優先順位だの型混合計算だの そのへんはスキルや慣れでカバーできる部分だと思うがね。 ヘタレの泣き言にしか聞こえん
454 名前:名前は開発中のものです。 mailto:sage [2006/05/31(水) 03:03:26 ID:d1R0EvRx] 整数+実数=整数とかになっちゃうのは、知ってれば対処はできるんだがちと不便な気がする
455 名前:名前は開発中のものです。 mailto:sage [2006/05/31(水) 10:30:39 ID:P8cACyaX] >>445 450も書いてるけど、計算結果は左辺の型がどうこうで確定するわけじゃないぞ。 オペランドが一つ処理されるごとに型が決まるから、気をつけないと小数点切り捨てのバグに引っかかったりする。 そういうのを避けるのがキャスト演算子。HSPには無いのか? 使ってないから知らん。