トップページgamedev
987コメント223KB

HSP - Hot Soup Processor [2]

■ このスレッドは過去ログ倉庫に格納されています
0001名前は開発中のものです。02/10/24 12:05ID:???

       (  ,,,)
        .(  ,,)      スクリプト言語 HotSoupProcessor について
        ( ,,).        ゲーム製作の視点から、また〜りと語り合うスレ。
     , -──- 、
    (,;::-──-; )-、
     .|` ̄ ̄ ̄´;;|ヽ l   * 質問する前に検索してみる事
     l;    :::;;;l-' /   * ヲチ、ネタなどはスレ違い
    ,-ヽ───.'-、´..   * 前スレ、関連サイトは >>2-5 あたり
    ヽ ──── '
0238あぼーんNGNG
あぼーん
0239名前は開発中のものです。02/11/29 20:14ID:vyEKC1ne
ゲームとかのアイテム画面?
これの五十音順並び替えってやっぱり、並び替えテーブルがつくってあんのかな?
普通にやったらかなり時間がかかるような。
0240あぼーんNGNG
あぼーん
0241名前は開発中のものです。02/11/29 23:27ID:HyNmdZhi
b
0242名前は開発中のものです。02/11/29 23:26ID:SYJYKZvr
b
0243あぼーんNGNG
あぼーん
0244名前は開発中のものです。02/11/30 01:12ID:Bo/e7XOf
c
0245あぼーんNGNG
あぼーん
0246名前は開発中のものです。02/11/30 01:49ID:CsUaI1XH
d
0247名前は開発中のものです。02/11/30 09:37ID:SLpyg/jf
>>237
おそらく自動だと思うが、このスレだけ特別なAAというのは不気味だ。
0248あぼーんNGNG
あぼーん
0249名前は開発中のものです。02/11/30 20:44ID:xT8ZrrPS
e
0250名前は開発中のものです。02/12/01 11:33ID:uRfVA6SM
>>247
ヤシは、なぜかHSPに私怨を抱いているようです。
0251名前は開発中のものです。02/12/01 12:23ID:jz8IvXiA
やっと荒氏はあぼーんされたようだな
YATで安心宇宙旅行だな
0252あぼーんNGNG
あぼーん
0253名前は開発中のものです。02/12/01 13:17ID:lBNqtkJN
イントロとループ部を別にしたwavを、
イントロが終わった直後に切れ目無くループ部を鳴らす方法ってあるかな?
025491002/12/01 16:17ID:iHwu2XrZ
>>253
こんなの? intro.wavとloop.wavは各自でよろしく。

onexit *finish
mci "open intro.wav alias intro"
mci "open loop.wav alias loop type MPEGVIDEO2";DirectShowで開く
mci "set intro time format ms";時刻形式をミリ秒に指定
mci "status intro length":length=stat;長さ取得
mci "play intro";イントロ再生
repeat:mci "status intro position";現在の再生位置取得
if length=stat:break:else:await 1:loop;再生位置が最後まで来たらbreak

mci "play loop repeat":stop;ループ部再生
;DirectShowなので、自動ループがかかる

*finish
mci "close all";最後にちゃんと閉じないとえらい事になる可能性アリ。
0255あぼーんNGNG
あぼーん
0256名前は開発中のものです。02/12/01 20:23ID:+kAW6UHg
get !
0257名前は開発中のものです。02/12/01 21:08ID:/DWG3zSA
>>254
おー、MPEGVIDEO2で開くと自動ループになるのか
知らんかった。>>253じゃないがありがd
0258あぼーんNGNG
あぼーん
025991002/12/02 22:22ID:BIRupp/i
>>257
正確には「自動ループにする事ができる」ね。

ここを見ると詳しい、というか情報元。
ttp://www.bekkoame.ne.jp/i/mr.manri/MCI/
0260あぼーんNGNG
あぼーん
0261名前は開発中のものです。02/12/03 07:55ID:4iEuJynl
いまさあ、ゲラゲラ笑いながら見てるんだけど、、、
やっぱ何書いてあるのかさっぱりわからんわ。このあらしはすごいや(藁
しかし本当にすげえな。こんなに荒らされてる掲示板というのも見たことないや。
どうなってるんかねえ。よほど高速な回線でつながっているのだろうか。
ここは普段から人がいないから、高速でレスポンスが帰ってくるというのも
原因の一つだろう。しかも一晩中はりついてないとこの量は書き込めないよね。


嵐にまけないようにかたまってレスしようぜ。HSP野郎たちあつまれーーー!
0262あぼーんNGNG
あぼーん
0263名前は開発中のものです。02/12/03 10:16ID:uAKJBYSy
集合。
0264名前は開発中のものです。02/12/03 12:48ID:IPUU+umt
マリオカートみたいなの作ろうとして奮闘中
3Dって全然知らないから大苦戦
難とかそれっぽく走れるものが出来たけど、壁のあたり判定でまた苦戦
うーん・・・
キャラとかマップとか追加できるのにしてやろうと思ってるけど、
いつ完成するんだろ・・・
0265あぼーんNGNG
あぼーん
0266名前は開発中のものです。02/12/03 15:16ID:QGRHuI+f
>>264
がんばれ
0267名前は開発中のものです。02/12/03 15:22ID:z2HfB1Od
>>261
で、どこを縦読みすればいいんだ?
面白いのはわかったから、なるべくsageてこうぜ

>>264
応援しかできないが、がんがれ。
0268あぼーんNGNG
あぼーん
0269あぼーんNGNG
あぼーん
0270名前は開発中のものです。02/12/04 13:32ID:SLQBDQC+
文字列変数
[abcdefg]

[abcdfg]
のように1文字だけ削除する事できるスマートな方法ありませんか?
027127002/12/04 13:59ID:SLQBDQC+
できました。
0272名前は開発中のものです。02/12/04 15:02ID:fOXJofKU
荒氏いない今がチャンス!
0273名前は開発中のものです。02/12/04 17:00ID:RLFLqCym
>>271
スマートな方法教えてクレクレ
0274あぼーんNGNG
あぼーん
0275名前は開発中のものです。02/12/04 17:25ID:o7j8KqAt
>273
スマートじゃない方法ってどんなのだ?
WinAPIを使わず地道にやる方法のことを言うのか?
0276あぼーんNGNG
あぼーん
0277名前は開発中のものです。02/12/04 19:44ID:HkhjIyYr
s="abcdefg"
n=4
strlen l,s
memcpy s,s,l-n-1,n,n+1
poke s,l-1,0

mes s
stop

これより速い方法キボンヌ
0278あぼーんNGNG
あぼーん
027991002/12/04 21:12ID:QKGWw3mg
別に速くしたわけでもなく、モジュール化してみた。

#module
sdim d,256,1

#deffunc onedel val,str
mref s,24:mref d,33
repeat 1
instr n,s,d,0:if n=-1:break;抜く文字を検索し、無かったらbreak
strlen l,s;長さを調べる
memcpy s,s,l-n-1,n,n+1;抜く文字以降の文字列をコピー
poke s,l-1,0;抜いた後に余った文字列を消す
continue 0:loop:return

#global

onedel "抜かれる文字列変数","抜く文字列"
で使える。
028091002/12/04 21:35ID:QKGWw3mg
上のモジュールの全角対応型

#module
sdim d,256,1

#deffunc onedel val,str
mref s,24:mref d,33
strlen o,d
repeat 1
instr n,s,d,0:if n=-1:break;抜く文字を検索し、無かったらbreak
strlen l,s;長さを調べる
memcpy s,s,l-n-o,n,n+o;抜く文字以降の文字列をコピー
poke s,l-o,0;抜いた後に余った文字列を消す
continue 0:loop:return

#global
0281あぼーんNGNG
あぼーん
0282名前は開発中のものです。02/12/04 23:04ID:HHwzSOAu
>>277,279-280
勉強になりますた
0283あぼーんNGNG
あぼーん
0284名前は開発中のものです。02/12/05 16:20ID:sFD0WyM4
>>280
その sdim d,256,1 て実行されるのか?
確かされなかった気が・・・

てか、sdimいらないと思うのだが・・・
0285名前は開発中のものです。02/12/05 16:55ID:Hv20fIgz
>>284
内部的には変数情報のポインタを書き換えてるだけみたいだから、いらないな。
0286あぼーんNGNG
あぼーん
0287名前は開発中のものです。02/12/06 06:14ID:gjGy9xAA
あぼーんされてもまだやるかコノッ
0288あぼーんNGNG
あぼーん
0289名前は開発中のものです。02/12/06 10:33ID:oMuhz68O
>>287
だぁかぁらぁ〜っ、あーいう馬鹿共は報知しなさい、呆痴。
0290あぼーんNGNG
あぼーん
0291名前は開発中のものです。02/12/06 12:32ID:JDp0qOWa
HSPは変数の宣言や定義しなくてもいきなり使えるけど
他人のソース見るとき解かり辛くてしょうがない
やめれ
0292あぼーんNGNG
あぼーん
0293名前は開発中のものです。02/12/06 13:23ID:CHj/t0Id
 ( ,,)
  ( ,,)
 [ ̄]))
  =
0294名前は開発中のものです。02/12/06 13:23ID:CHj/t0Id
 (  ,,)
  ( ,,)
 [ ̄]))
   ̄
0295名前は開発中のものです。02/12/06 14:17ID:pA5EQlvP
>>291
それが長所でもあり短所でもあるが
変数名typoとかがわかりにくいから、
漏れも宣言型のがいいなぁ
0296名前は開発中のものです。02/12/06 14:32ID:gjGy9xAA
配列変数の書き方.じゃなくて[]にならないかなぁ
,と. 見分け辛くて
0297あぼーんNGNG
あぼーん
0298名前は開発中のものです。02/12/06 15:21ID:Wl9neGkj
>>291
確かに他人に見せるソースには、
変数表は必須だ罠。
ソースの先頭あたりにコメント内にズラズラと、
列記しておけば解かり辛いのは軽減されるハズではあるが…

どちらかというと、コンパイル時に変数名を間違えても
エラーにならないのが問題。
0299あぼーんNGNG
あぼーん
0300名前は開発中のものです。02/12/06 15:34ID:PxcUl6Hv
条件式でいきなり初見の変数が評価されたり演算されてたり・・・
0301名前は開発中のものです。02/12/06 17:18ID:2kq23lGR
x=0
y=0
int key

screen 0,100,100
repeat
redraw 0
cls
pos x,y
mes "●"
stick key,15
if key&1 : x-=1
if key&2 : y-=1
if key&4 : x+=1
if key&8 : y+=1
if x<0 : x=0
if x>90 : x=90
if y<0 : y=0
if y>90 : y=90
redraw 1
await 1
loop

なんでredraw使ってるのにちらつくんだろ(ノД`)
あとなんで右端まで行くと途切れちゃうんでしょか
0302名前は開発中のものです。02/12/06 17:21ID:Ppy2/Myo
>>301
cls 使ってるから。
color 255,255,255 : boxf を使うと吉。

あと頼むからsageてくれ
030330202/12/06 17:24ID:Ppy2/Myo
追記。
> 右端で途切れる
それはHSPってかWindowsの仕様。
ウィンドウサイズを広げると吉。
0304名前は開発中のものです。02/12/06 18:01ID:EP/eWYb8
>>302-303
サンクス、うまくいったYO
screen 3,100,100にしてウィンドウサイズ変えようとしたら何故かフリーズした(;´Д`)
clsの用途がわからなくなったなぁ
0305名前は開発中のものです。02/12/06 18:03ID:EP/eWYb8
あ、ウィンドウサイズ広げるってのはパラメタのほうのことか
0306あぼーんNGNG
あぼーん
0307名前は開発中のものです。02/12/06 19:35ID:G3MFblkz
#define WX 200 ; ウィンドウサイズX
#define WY 200 ; ウィンドウサイズY
#define BX1 60
#define BY1 70
#define BX2 80
#define BY2 90
#define SIZE 16 ; キャラサイズ
x=0 ; キャラ座標X
y=0 ; キャラ座標Y
int key ; 取得キー
screen 0,WX,WY
repeat
redraw 0
color 0,0,0 : boxf
color 255,255,255 : boxf BX1,BY1,BX2,BY2
pos x,y
color 255,255,255 : mes "●"
0308名前は開発中のものです。02/12/06 19:35ID:G3MFblkz
stick key,15
if ( (x+SIZE>BX1) & (y+SIZE>BY1) ) & ( (x<BX2) & (y<BY2) ) {
title "Hit"
} else {
if key&1 : x-=1
if key&2 : y-=1
if key&4 : x+=1
if key&8 : y+=1
if x<0 : x=0
if x>(WX-SIZE) : x=WX-SIZE
if y<0 : y=0
if y>(WY-SIZE) : y=WY-SIZE
}
redraw 1
await 1
loop
当たり判定つけてみたんですけど
一度くっつくと動けなくなってしまいます
また、こうしたら良いとかいうのありますか?(配列?)
0309あぼーんNGNG
あぼーん
0310名前は開発中のものです。02/12/06 19:55ID:3rWhYw+7
>>308
あたりまえだろ・・・
あたってたらタイトルバーを"hit"に
あたってなかったらキー操作になってんじゃん。
0311あぼーんNGNG
あぼーん
031230202/12/06 20:15ID:Ppy2/Myo
>>308
http://game.2ch.net/test/read.cgi/gamedev/1005038280/140-142
に見本をうぷしといた。

HSPだから仕方ないけど、なるべく
作業によって、gosubしたほうが後で楽。
拡張しやすいように配列を使うと有効。
0313あぼーんNGNG
あぼーん
0314名前は開発中のものです。02/12/06 22:48ID:IQvk4cZy
>>312
進入不可にしたいときはどうすればいいんだろ
衝突チェックしてから座標移動しなきゃならないよね?

やっぱいろいろやってみなきゃだめだね
講座なんか見て理論上ではわかったつもりでも
実際は思うようにプログラム組めないんだなぁ
ということがわかりました

みなさんどうもありがとうございました
0315あぼーんNGNG
あぼーん
031691002/12/06 23:11ID:0t0VfH0P
さらに置き換えできるように改造。
#module
str s;操作する文字列
int l;操作する文字列の長さ
int n;抜く文字の位置検索用
int i;インデックス
sdim d,256,2;0"抜かれる文字列"、1"置き換える文字列"
dim o,2;0"抜かれる文字列の長さ"、1"置き換える文字列の長さ"
str t;文字列一時退避用

#deffunc strrep val,val
mref s,24:mref d,57:i=0
strlen o.0,d.0:strlen o.1,d.1

repeat 1
strlen l,s;操作する文字列の長さを調べる
instr n,s,d.0,i:if n=-1:break:else:n+i;抜く文字を検索し、無かったらbreak、あったらインデックス分を足す
sdim t,1,1;なんかこうしないと上手くいかない
memcpy t,s,l-n-o.0,0,n+o.0;抜かれる文字列以降の文字列を一時的に退避
poke s,n,0;抜かれる文字列以降を削除
s+d.1+t;抜かれる文字列より前にある文字列+置き換える文字列+抜かれる文字列以降の文字列
i+n+o.1:continue 0:loop:return;インデックス計算
#global
031791002/12/06 23:11ID:0t0VfH0P
使い方めんどくなってるのでサンプル
#include "strrep.as"
s="おはようございます\\nさようなら\\nこんにちは";抜かれる文字列
sdim d,256,2
d.0="\\n":d.1="\n";0"抜く文字列"、1"置き換える文字列"
mes s;置き換える前
strrep s,d:mes s;置き換えた後

stop
0318あぼーんNGNG
あぼーん
0319名前は開発中のものです。02/12/06 23:27ID:3bUcyKcn
実験的にO2でパズル組んでるけどo2.asそのまま使うと糞ですね、訳分からん仕様・・・。
素直にse命令のみで組んでます。

se命令で直接配列変数送れればいいんだけどね。
0320あぼーんNGNG
あぼーん
0321名前は開発中のものです。02/12/07 00:44ID:GCNdkRWg
めら盛り盛り盛り亜合点な!
このチョーシで頼むぜベイベー!わーお!
0322あぼーんNGNG
あぼーん
0323名前は開発中のものです。02/12/07 07:20ID:VzmrLDOV
なんでここって、こんなに「あぼーん」多いの?
0324あぼーんNGNG
あぼーん
0325名前は開発中のものです。02/12/07 11:34ID:vEyGHeAt
>>323
終了厨の仕業
0326あぼーんNGNG
あぼーん
0327名前は開発中のものです。02/12/07 16:42ID:yghKPDIS
ゼルダの伝説みたいなのってHSPで出来るのか?
どうよ?
0328名前は開発中のものです。02/12/07 17:16ID:tczHu7da
>>327
お前馬鹿だろ?
rpgツクールじゃねーんだぞ・・・
0329名前は開発中のものです。02/12/07 17:34ID:QN5Km6uG
>>328
3D使えるんだろーが?
馬鹿はそっちだろ。
0330名前は開発中のものです。02/12/07 17:36ID:tczHu7da
>>329
そんなことを聞くことに対して馬鹿といったんだが?
出来るに決まってるだろ。
hspで○○はできますか?とか言う質問、イラッとこないか?
0331あぼーんNGNG
あぼーん
0332名前は開発中のものです。02/12/07 17:50ID:uzjobifA
>>330
わざわざつかかってくるほうがイラっとくるな。
0333あぼーんNGNG
あぼーん
0334名前は開発中のものです。02/12/07 18:20ID:tI4HRBNH
>>314
進入不可の方法教えてくれ
0335あぼーんNGNG
あぼーん
0336名前は開発中のものです。02/12/07 18:43ID:4/oXf729
削除人でも博之でも誰でもいいから
荒らしなんとかしろよ。
削除無脳と
0337あぼーんNGNG
あぼーん
■ このスレッドは過去ログ倉庫に格納されています