テトリスを作る (774レス)
1-

517: 515 [sage] 2005/08/07(日) 14:45:14 ID:6IEi55LX(1) AAS
>>516
516(1): 名前は開発中のものです。 [sage] 2005/08/07(日) 00:04:37 ID:f96S2tbz(1) AAS
>>515
いいんじゃない?
というか、開発状況報告スレのほうがいいと思う。
ここ人居なさ気っすね。
現在、開発状況報告スレでちまちまやってますんで。
518: 名前は開発中のものです。 [sage] 2005/08/11(木) 16:24:19 ID:MulpIDR7(1) AAS
>>344
344(1): 名前は開発中のものです。 [] 04/05/03 15:14 ID:bSTlsYzK(1/4) AAS
なんかわからないけどテトリス作りたくなったので再利用しますね
姉妹スレもよろしく

初心者専用スレ「シミュレーションゲーム」を作らない?
2chスレ:gamedev
【目標ない奴】おまいらに課題を与える。【集まれ】
2chスレ:gamedev

とりあえずブロックを置けるかどうかの判定をつくってみるよ
2次元配列同士で比較するっていう作り方はやったことないけど
ちょっと感動したもので

ただ、判定するためにブロックを置くマップの配列を大きめに取るっていうのは
どうなんだろう。生理的に受け付けない。

アルゴリズムはシンプルになるし余計に確保しないといけないメモリなんて微量
なのにこの胸騒ぎ。ドキガムネムネしちゃうよ……。

ちなみに画像は豆腐でいきます
段階学習スレの絵描きさんバージョンがあればいいのにね
と都合のいいことを考えてみた
>段階学習スレの絵描きさんバージョン
それやろうとしたら激しく罵られた
しかも的ハズレな(素材提供してもらって楽するな)という批判
こっちが絵を描くのになぜそういう話になるのか結局わからず
この板なんだか頭のおかしい人が常駐しててやりにくい
519: 名前は開発中のものです。 [sage] 2005/08/12(金) 01:56:28 ID:YeQmImml(1) AAS
アフォは無視しなされ。
520
(1): 名前は開発中のものです。 [sage] 2005/08/17(水) 22:22:12 ID:DcrS+3wj(1/2) AAS
回転法則ってこんな感じなのがいいんだっけ?
□□□□  □□■□
■■■■←□□■□
□□□□→□□■□
□□□□  □□■□

□□□□  ■■□□  □□□□  □■□□
■■■□←□■□□←□□■□←□■□□
■□□□→□■□□→■■■□→□■■□
□□□□  □□□□  □□□□  □□□□

□□□□  □■□□  □□□□  □■■□
■■■□←□■□□←■□□□←□■□□
□□■□→■■□□→■■■□→□■□□
□□□□  □□□□  □□□□  □□□□

□□□□  □□■□
■■□□←□■■□
□■■□→□■□□
□□□□  □□□□

□□□□  ■□□□
□■■□←■■□□
■■□□→□■□□
□□□□  □□□□

□□□□  □■□□  □□□□  □■□□
■■■□←■■□□←□■□□←□■■□
□■□□→□■□□→■■■□→□■□□
□□□□  □□□□  □□□□  □□□□
521
(1): 名前は開発中のものです。 [sage] 2005/08/17(水) 22:24:01 ID:DcrS+3wj(2/2) AAS
あとこれも。

□□□□
□■■□
□■■□
□□□□

TTCが定めるワールドルールとかっていう奴は全然分からなス
522
(1): 名前は開発中のものです。 [sage] 2005/08/17(水) 22:54:58 ID:wHJ/Q6SP(1) AAS
>>520-521
俺は、4行4列の行列として扱って「行列の回転」の演算を利用したよ
523: 名前は開発中のものです。 [sage] 2005/08/20(土) 03:05:28 ID:QiGA0Fi6(1) AAS
>>522
!!!

カ、カコイイ!!
524
(1): 名前は開発中のものです。 [sage] 2005/08/21(日) 18:54:13 ID:2QzGJoIB(1) AAS
ただ単に行列の回転でもいいけど、そのリスト見てわかるように
赤以外のブロックの最底面の位置は合わせた方がいいぞ。
じっくり遊べば気づくかもしれんが、接地中の操作性がまるで違うから。
テトリスワールドは床蹴りやらで対応しているが、個人的にそれはどーかと。
525: 名前は開発中のものです。 [sage] 2005/08/22(月) 23:42:58 ID:Hcei4f6p(1) AAS
□□□□  □■□□  □■□□  □■□□
■■■□←■■□□←■■■□←□■■□
□■□□→□■□□→□□□□→□■□□
□□□□  □□□□  □□□□  □□□□
               ↑
               こうだったら接地中、回転させると浮いてしまうはず。

当時、なぜ接地中でも浮かないんだろうと思ったけど、こんな事だったとかなり後で分かったぽ
526: 名前は開発中のものです。 [sage] 2005/08/24(水) 16:35:32 ID:eB4TKXgy(1) AAS
壁       壁      .壁
│       │      .│
│■     │■    ...│  ■
│■■ → ■■■ → |■■■
│■     │      .│
│       │      .│

これができれば大半の人は満足するんじゃね?
527: 名前は開発中のものです。 [sage] 2005/08/25(木) 03:04:25 ID:gBFFCRwb(1) AAS
少なくとも、俺の周りでテトリス好きの人は>>524がクリアできてるゲームしか遊んでないけどね
ただ、確かにシフトして底面を合わせる回転方式をスマートに実装するのは難しいな。
補正量を記述した定義ファイルを別に作ってそれを読み込ませて対応したが、少し非効率な気もする。
528: 名前は開発中のものです。 [sage] 2005/11/04(金) 01:17:07 ID:TvoHZ9wF(1) AAS
なるほど
529: 名前は開発中のものです。 [sage] 2005/11/06(日) 01:22:19 ID:u20WXTTw(1) AAS
テトラミノのそれぞれの名称ってありますか?
530: 名前は開発中のものです。 [sage] 2005/11/06(日) 01:52:42 ID:9g77vaev(1) AAS
TOLISZr
531
(10): 名前は開発中のものです。 [sage] 2005/12/22(木) 10:21:46 ID:gp4MJFmZ(1) AAS
HSPでテトリス作りたいんですけど、何から手をつけて良いかがわかりません。
2次元配列を使うのですか?
532
(1): 名前は開発中のものです。 [sage] 2005/12/22(木) 20:37:29 ID:rrOTwdfx(1) AAS
>>531
まずはこのスレを頭から読み直せ
話はそれからだ。
何がわからないか書いてみな、
今漏れも久しぶりにHSPさわってるから。
533: 531 [sage] 2005/12/26(月) 15:02:04 ID:TOAf+nRF(1/5) AAS
532さん、レスありがとうございます。
とりあえず、見づらいですが途中までのソース載せときます。
buffer 1,,,1
picload "tetris.bmp" ;32×32の灰色のブロックと黄色いブロック
screen 0,415,607,1
palcopy 1
*START
gmode 2
gosub *SETMAP
534: 531 [sage] 2005/12/26(月) 15:04:40 ID:TOAf+nRF(2/5) AAS
*LOOP1
redraw 0
gosub *ブロック
gosub *DRAWMAP
redraw 1
await 60
goto *LOOP1

*ブロック
BY+3
stick KY,8
if KY=1 :BX=BX-32
if KY=4 :BX=BX+32
if KY=8 :BY=BY+16
return
535: 531 [sage] 2005/12/26(月) 15:08:09 ID:TOAf+nRF(3/5) AAS
*DRAWMAP
color 0,0,0 :boxf 0,0,414,606
repeat 19
RCNT=cnt
repeat 19
if MAP.cnt.RCNT=1 {
pos cnt*32,RCNT*32 :gcopy 1,0,0,32,32 ;壁用灰色ブロック
        }
loop
loop
pos BX,BY :gcopy 1,32,0,32,32 ;落下用黄色ブロック
return
536: 531 [sage] 2005/12/26(月) 15:14:43 ID:TOAf+nRF(4/5) AAS
*SETMAP
dim MAP,19,19
MAP.0.0=1,0,0,0,0,0,2,0,0,0,0,0,1
MAP.0.1=1,0,0,0,0,0,0,0,0,0,0,0,1

MAP.0.17=1,0,0,0,0,0,0,0,0,0,0,0,1
MAP.0.18=1,1,1,1,1,1,1,1,1,1,1,1,1
repeat 19
RCNT=cnt
repeat 19
if MAP.cnt.RCNT=2 {
BX=cnt*32 :BY=RCNT+32
MAP.cnt.RCNT=0
}
loop
loop
return
537: 531 [sage] 2005/12/26(月) 15:19:58 ID:TOAf+nRF(5/5) AAS
これで以上です。
まずは黄色いブロックが、底辺まできたら蓄積されるようにしたいのですがどうしたら良いでしょうか?
ちなみに、1が壁用ブロック、2が落下用ブロックです。
(本当は12×19マスの配列にしたいのですが、良くわからず19×19の配列になってます)
538
(1): 531 [sage] 2005/12/28(水) 08:35:46 ID:ex+d93O5(1) AAS
レスがありませんね。
いや、随分と素っ頓狂なプログラムを書いてしまいました。
アドバイスのしようがありませんものね。
どうぞ、僕のことはスルーして次の話題に行ってください。
539: 名前は開発中のものです。 [sage] 2005/12/28(水) 11:43:22 ID:xg7Xr6Bl(1) AAS
>>538
ちょwww自分のレス遅かったのにそれかよwww
>>532が来るまでこれでも見とけ

外部リンク:gamdev.org
540: 531 [sage] 2005/12/28(水) 21:00:04 ID:az8NFlCH(1) AAS
レスありがとうございます。
リンク先見ました。
スプライトとプレイフィールドの意味がわからないですが、
とりあえずペイントソフトで七種のブロックをつくってみます。
541: 531 [sage] 2005/12/29(木) 15:38:50 ID:w8wWzACB(1/2) AAS
リンク先にあった〜コウのポケット〜をみて、HSP風に変えてみました。
dim A.12.21
A.0.0=9,0,0,0,0,0,0,0,0,0,0,9
A.0.1=9,0,0,0,0,0,0,0,0,0,0,9
( 省 略 )
A.0.19=9,0,0,0,0,0,0,0,0,0,0,9
A.0.20=9,9,9,9,9,9,9,9,9,9,9,9
repeat 21
rcnt=cnt
repeat 12
pos cnt*15,rcnt*15
if A.cnt.rcnt=9 { mes "口" }
loop
loop
stop
1-
あと 233 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル

ぬこの手 ぬこTOP 0.014s