トップページgamedev
990コメント416KB

ズブの初心者がゲーム作れるまで勉強するスレ

■ このスレッドは過去ログ倉庫に格納されています
0001名無しさん@お腹いっぱい。01/11/07 20:26ID:PFtlmWD9
【参加資格】
ズブの初心者以外お断りです。

なおアドバイス等はプロのかたでも結構です。
初心者は聞く耳を持ちプロもわかりやすく教えてやってください。
0416名前は開発中のものです。04/02/21 18:34ID:xUxW4pva
>>415
デジトキに登録して、自称(詐称)すればいっちょあがり
0417名前は開発中のものです。04/02/21 23:11ID:XiRsPFUi
>>415
すでに三流だから安心しろ。
041839704/02/22 04:18ID:hRI1ig6X
>>412,413さん、どうもです。
よくわからんけど、もう一度やってみます。
0419名前は開発中のものです。04/02/22 21:44ID:fz/BpWBq
CでRPGの簡単な戦闘を作ってるんですが、戦闘で技を出すときに
if文100個ぐらいに分岐しそうで怖いんですが普通こういうのは
どうすればいいんでしょうか?
関数へのポインタ使ってやればいいのかとも思ったりしたけど、結局
100個も関数へのポインタに入れてやる方法しか思いつかないしなあ・・・。
0420名前は開発中のものです。04/02/22 22:03ID:sRJhcXYB
C言語だいたいできるようになったら
WIN API
やって
その次DirectSDK
やればいいんですか?
0421名前は開発中のものです。04/02/22 22:27ID:kwjkiYoP
何をしたいかによりますので
0422名前は開発中のものです。04/02/23 00:53ID:VMGjuvjo
CでネットゲームのマクロやBOTを作りたいのですが、DOSプログラムしかやったことがありません
マクロやBOTを作るにあたって参考になるサイトなどありませんか?
もし有益なアドバイスなど頂けたら、形としてお礼をします
0423名前は開発中のものです。04/02/23 12:40ID:CndOTp3o
まずはうんこを1週間我慢しろ
話はそれからだ
0424名前は開発中のものです。04/02/23 15:29ID:tx5Vu6A0
じゃあ我慢するぜ!!
0425名前は開発中のものです。04/02/24 00:27ID:egxTU+So
│    ______           _||
│\|/        \          三||
│ /  _______|     .......  _||  ガラッ
│| /../  __  ___ |          二||
│ | /   ./  \/ ||           ||
│ ( 6----|  > ||< ||.... ドラエも〜ん!||
│ .|   \_/ ).__/.|  ジャイアンが ||
│ |     ________)  スネ夫が  ..||
│  ..\ .. /   ...ノノ__          ||
│/ ̄ ̄\  ̄ ̄ ̄/... . ̄ ̄ ̄ ̄ ̄ ̄ ̄||
│       ̄ ̄ ̄        .....   三||
│                 ...  ...   ||





      ____
     /∵∴∵∴\
    /∵/∴∵\∵\           .  ..     \|
   /∵<・>∴∴.<・>∵|           . . / ̄ ̄ ̄
   |∵∵/ ●\∵∵|           . /
   |∵ /三 | 三|∵ |            |
   |∵ |\_|_/| ∵|            ∩
    \ | \__ノ  |/         .   |.|
     \___/:、             ∪、
     /∵━○━∵ヽ            ..| \
    /∵人∵∵∵ \:\           \  \
  ⊂´:_/  )∵∵∵∵ヽ:_`⊃      / ̄ ̄ ̄ ̄ ̄ ̄
                        /
0426名前は開発中のものです。04/02/28 15:09ID:FO2lj2+X
すみません。今VisualC++とDirectx9を使ってゲームを作る方法を勉強しようと思っているのですが、
directx9のhelpを見てもよくわかりません。
directx9を勉強するのに最適なサイトってあるのでしょうか?
0427名前は開発中のものです。04/02/29 09:45ID:yzlx/o3W
「ゆきいるか」でくぐれ
0428名前は開発中のものです。04/03/02 17:53ID:lJhVVoT3
>>419
データ駆動にする
100個全部が違う効能でないなら、
技に属性を持たせて、属性で処理をわける
後は、属性を組み合わせられるようにする
0429名前は開発中のものです。04/03/05 20:38ID:Ua6PG82z
最初に作ろうとしているゲームがアクションゲームってゆうのはまずい?
0430名前は開発中のものです。04/03/05 21:27ID:w7+3fy9+
↑マルチ
0431名前は開発中のものです。04/03/06 22:23ID:GGE+RQF4
>>428
どうも、ということは技の動きとかもそういうふうにすればいいのかな。
なんとかできそうです、ありがとうございました。
0432名前は開発中のものです。04/04/09 16:56ID:CEu0SDwR
HSPを使ってドンキーコング(初代)もどきを作りたいのですが
敵の初期配置まではマップチップエディタで作れても動き(エレベーター、
バネ、コング、タル等)が作れません。誰かお助けを・・・
0433名前は開発中のものです。04/04/09 17:49ID:UK8Ty0N1
>>432
一つ一つ片付けていけ。
自キャラは動かせられるか?
043443204/04/09 17:59ID:CEu0SDwR
自キャラは歩く+ジャンプできます。
某サイトからパクっただけですが・・・
0435名前は開発中のものです。04/04/09 20:58ID:DqZB2HIa
>>434
ハシゴは登れる?
ってか勉強目的ならパクるのはあまりよくない。
043643204/04/10 09:23ID:J1HEKCQ/
登れるようにはできると思いますが・・・自信ありません。
screen 0,256,224,1,dispx/2-125,dispy/2-112
buffer 2,200,200,1;バッファー
picload ".bmp"
gsel 0,1
title "ジャンプ付きマリオ"
carapos=20;キャラクタの位置(x座標)
caramuki=0;キャラクタの向いている方向、0が右、1が左
jumpryou=0
zimen=200;地面の高さ。
repeat
redraw 0
stick k,47
color 255,255,255:boxf 0,0,winx,winy
color 0,0,0:line 0,200,winx,200
gosub *jump
gosub *walk
gosub *mario;マリオを描写する。
redraw 1
await 16
loop
*mario
if kasoku=0:caraani=0
if jumpryou!0:caraani=5
pos carapos,zimen-16:gmode 2,16,16:gcopy 2,caraani*16,caramuki*16,16,16
return
043743204/04/10 09:26ID:J1HEKCQ/
*walk
walkchk+=1
if walkchk<2:return;ジャンプと同じ速さで移動すると速くなりすぎるから、
walkchk=0;2回に1回しか書き換えたりしないようにする。
kasoku3+=1;ボタンを押した後何回書き換えたか。
if kasoku3\2=0{
if (k=0)|(k=5):{
carabreak=0
kasoku3=0
if kasoku<0:kasoku+=1
if kasoku>0:kasoku-=1
}
if k&4:{
carabreak=0
if jumpryou=0:caramuki=0
if kasoku<0:caraani=4:carabreak=1
if kasoku<6:kasoku+=1:
}
if k&1{
carabreak=0
if jumpryou=0:caramuki=1
if kasoku>0:caraani=4:carabreak=1
if kasoku>-6:kasoku-=1
}
if (kasoku!0)&(carabreak=0){
caraani+=1
if caraani>=4:caraani=1
}
}
kasoku2=kasoku/2;移動量の推移を2回に1回にする。(1,1,2,2、3,3というように)
carapos+=kasoku2
return
043843204/04/10 09:32ID:J1HEKCQ/
*jump
if k&32{
if (jumpryou=0)&(jumpstop=0):jumpstop=1
}else{
if (jumpryou=0)&(jumpstop!1):jumpstop=0
if (jumpstop=1)&(jumpryou>=30):jumpstop=3
}
if jumpstop>=3:jumpstop+=1:goto *jump↑↓
if (jumpstop=2):goto *jump↓
if jumpstop=0:return
goto *jump↑

*jump↑
if jumpryou<=19:jumpkasoku=4:goto *jump↑2
if jumpryou<=40:jumpkasoku=3:goto *jump↑2
if jumpryou<=58:jumpkasoku=2:goto *jump↑2
if jumpryou<=65:jumpkasoku=1:goto *jump↑2
if jumpryou>=67:jumpkasoku=0:jumpstop=2
*jump↑2
if jumpryou=51:jumpkasoku=4
if jumpryou=16:jumpkasoku=3
if jumpryou=38:jumpkasoku=2
if jumpryou=57:jumpkasoku=1
;title ""+jumpstop+" "+jumpryou+" "
jumpryou+=jumpkasoku
zimen-=jumpkasoku
return
043943204/04/10 09:41ID:J1HEKCQ/
*jump↓
if jumpryou>=62:jumpkasoku=1:goto *jump↓2
if jumpryou>=51:jumpkasoku=3:goto *jump↓2
if jumpryou>=4:jumpkasoku=4:goto *jump↓2
*jump↓2
if jumpryou=62:jumpkasoku=2
if jumpryou=51:jumpkasoku=4
if jumpryou=47:jumpkasoku=5
if jumpryou=22:jumpkasoku=5
if jumpryou<=5:jumpkasoku=jumpryou

jumpryou-=jumpkasoku
zimen+=jumpkasoku
return
*jump↑↓
if jumpstop<=4:jumpryou+=1:zimen-=1
if jumpstop>6:jumpryou-=1:zimen+=1
if jumpstop=9:jumpstop=2

return  このプログラムで逝こうかと思ってるのですが。
0440名前は開発中のものです。04/04/10 21:17ID:8lOF11Ft
1行も読んでいないが、長めのソースを上げるときはどこかにうpしる。
044143204/04/11 09:10ID:A6JtVjTv
http://gamdev.org/up/upload.php
ここの458
044243204/04/11 09:16ID:A6JtVjTv
とりあえず、敵キャラの動きとエレベーターからなんとかしていきたいのですが。
0443名前は開発中のものです。04/04/13 01:51ID:bffhB7Dj
>442
HSPは読みにくいな…このjumpってサブルーチンの中ではループしてないんだな?
だったら*mario とか呼んでるメインルーチンに、エレベータとか動かすルーチンを
付け加えたらいいじゃないか。
044443204/04/13 16:06ID:4DU9oHFH
それがわからないのですが・・・
0445名前は開発中のものです。04/04/13 20:48ID:bffhB7Dj
>>444
んじゃ無理だ。HSPの事なんか忘れて
vectorでも逝ってフリーのゲーム落として遊んどけ。
どうしても作りたいなら、とりあえずこのパクったソースの数字を1ずつ変えては動作させて
なんとなく動作がわかるまで続けろ。
044643204/04/14 14:27ID:6GvtzIet
>>445
後者を選ぶんで、いつか完成したらうpするんでそのときは評価お願います。
0447名前は開発中のものです。04/04/14 22:23ID:QzJ05j2p
PPF-O-MATIC3でパッチを当てる時に
「Binblock Patchvalidation failed」
と表示されるのですが、どうすれば上手く当てることが
できますか?アドバイスお願いします。
0448名前は開発中のものです。04/04/15 20:48ID:Mhaj1jFG
これからゲームつくるためにプログラムおぼえようと思い、
Cを勉強するつもりです。そこで質問なんですが、Cでいいんでしょうか。
もっと初心者がやるべき言語があるんでしょうか?
0449名前は開発中のものです。04/04/15 21:43ID:KL9zvr3b
C++にも繋がるし良い言語だとは思うけど
初心者には敷居が高いね。漏れはあまりオススメしない。
Delphiあたりがすぐにビジュアルな表示が出来るから
プログラミングの面白さを感じやすいと思う。
一つの言語覚えたら二つ目、三つ目を覚えるのはそこまで苦痛にならんし。
0450名前は開発中のものです。04/04/15 22:13ID:cgpTXQVv
私はC、C++、Visual C++、DirectXの順で学びました。
Visual C++まで行けばウインドウズゲームが作れるけどそこまで半年ちょいぐらいかかったかな。
それまでは文字しか表示できなくて地味なプログラムだったな...

ようは地味な下積みを耐えられるかどうか、とりあえずお手軽に見栄えのいいものが作れたほうが
楽めて長続きしそうって人は449さんの言うようにDelphiから初めたほうがいいかも。

一刻も早くゲームプログラムを極めたいって人はCかC++かな。
C++言語はC言語を内包しているから、C++言語から勉強を始めてもいいと思うけど、
いきなりたくさんの情報に混乱しそうと思う場合はC言語から始めたほうがいいかも。
0451名前は開発中のものです。04/04/15 22:17ID:Mhaj1jFG
>>449 >>450
レスありがとうございます。少しずつがんばって面白いゲーム作れるように
なります!!!!!
0452名前は開発中のものです。04/04/16 02:20ID:g/W+Go02
むずかしい・
0453名前は開発中のものです。04/04/16 21:57ID:gLXzG93z
最終的にゲームを作るには
どの言語から勉強していけば良いのか質問しようとしたら
450に答えが…(`・ω・´)printf カラ、ガンバルッス!!
0454名前は開発中のものです。04/04/17 16:08ID:Iaz63Ew/
453ガンガレ
0455名前は開発中のものです。04/04/17 21:58ID:u6Fa0MOe
3月上旬からプログラムの本を読み始めて、
3月中旬に家にVCのCDがあることを知り、
3月下旬からプログラムを書けるようになって、
4月1日からできたプログラムを保存しております
もうすごい楽しい!現在進行形で頑張ってます

今ブロック崩しができました。これに少し独自のルールを付け加えて終りにしたいと思います
次は何を作ろうかな?テトリスは難しいか!?
0456名前は開発中のものです。04/04/18 21:03ID:4spkHYFp
思いついたのを片っ端から形にしていくのでもいいのでは無いかと思います。
プログラムは言語の仕様・書式を覚えたらアルゴリズムの発想しだいだし。
045745504/04/19 20:57ID:YPIC9Z/a
>>456
でもやっぱりステップアップするには、常套手段に従ってありふれた簡単なゲームを作っていく方がよくないですか?
目的も持てるし、できたら嬉しいし

そういうわけで、とりあえずテトリスは難しそうなので、今から五目並べやってみます
0458名前は開発中のものです。04/04/20 01:02ID:byeyzMFH
今テトリスのCPU対戦を作ってます。
ですが思うように、というか全然アホCPUしか作れません。
なにかアドバイスをいただけませんか。
045945504/04/20 01:25ID:Hld2EAau
交互に打って5つ並んだら終了・・・基本は出来た!
いやー、楽しいですね
できればCPU対戦のことも考えたいけど、無理だろうな
コンピューターの動きのアイディアが全然思いつかない
0460名前は開発中のものです。04/04/23 00:37ID:pRqu8Vw+
>>459
とりあえず三目並べ(要するに○×)でCPU作ってみたら?
046145504/04/24 00:10ID:TZY+vRaw
>>460
うーん、なるほど
考えてみます・・・これだけでも頭を捻ってしまう
0462練習帳著者04/04/25 10:45ID:LyJsr1s0
>>459
とりあえず、以下の処理を試してみましょう。

1 可能な手を列挙する(制約のない五目並べなら空白の場所を列挙するだけ)。
2 その中から「ランダムに」打つ手を選ぶ
3 コンピュータがその手を打つ処理を実装する

これができれば、あとは2の部分でよりましな手を選べるよう改良していくだけ。
046345504/04/29 00:57ID:vcMIXwea
>>462
あ。わざわざすいません
でも先日から別のプログラムを作り始めてしまって・・・
後回しにすると忘れてしまいそうなので、それが終ってからやってみます
0464名前は開発中のものです。04/04/30 17:12ID:bNvYLXW7
http://www.geocities.co.jp/SiliconValley-Bay/2919/
これ使っていろいろやってみようかな、と思ってたんです。
で、簡単な文をコンパイルしようとしたら「d3drm.libが開けません」ですって。
なんか他のプログラムでもこのライブラリのせいでエラーが出ます。

↑の文だけで原因っぽいもの分かりますか?
0465名前は開発中のものです。04/04/30 17:15ID:La2rD6H9
pathが通ってない
0466名前は開発中のものです。04/04/30 18:10ID:bNvYLXW7
>>465
どうも
もう一回しっかり見てみます
046746404/05/02 13:59ID:y/UaHwjT
ちゃんと通したら今度はエントリーポイントを作れだの云々・・・

それより上のより簡単そうなEasy Link Libraryってのを見つけたんです
サンプルのテトリスとかがありまして、実行ファイルはもちろん動くのですが
自分でプロジェクトを開いてビルドするとエラーが出ます。

この件に限らずサンプルは殆ど++6なので、自分が使ってる.NETだと
開いた時の++7形式に変換しますか?→はい でおかしくなってるのだと思います

こういう場合は何か書き足す必要があるのでしょうか?
0468名前は開発中のものです。04/05/02 14:35ID:a+vlsVTZ
VC6なので力になれないと思うが、とりあえずどんなエラーか書いてみ?
04696にすればよかった・・・04/05/02 15:12ID:y/UaHwjT
どうもです

ttp://www3.justnet.ne.jp/~botchy/el/el63.htm
ここの手順通りにやったのですが・・・
ビルドすると
・Project fatal error LNK1136: ファイルが無効であるか、 または壊れています。
と出ます

続きます
0470名前は開発中のものです。04/05/02 15:16ID:y/UaHwjT
simpleXでやった時は↓のようなのをビルドしました

#include<simpleX.h>

void StartUp()
{
}

void MainLoop()
{
Clear();
Text(0,0,"Hello World");
}

そうすると
・resu warning LNK4003: ライブラリの形式が無効です。ライブラリは無視されます。
この警告が4つと
・resu fatal error LNK1561: エントリー ポイントを定義しなければなりません。
となりました

resuってのはプロジェクト名です
047146404/05/04 20:27ID:Nhb0M37d
よっしゃ、何とかしたで!

パスの順番変えたり、いろいろしたら出来ました
0472名前は開発中のものです。04/05/07 09:39ID:7PPmi+4T
腹へった
0473名前は開発中のものです。04/05/09 18:56ID:FkW++Xq5
メシ食ったか?
047446404/05/10 20:05ID:XWABRbZ8
elについて質問していいですか?

http://www3.justnet.ne.jp/~botchy/sample/Sam0201.cpp
>// 3Dを使って開発する場合、必ず必要です。
>#define DIRECT3D_IM

これってDirectXSDKにある何かですか?
具体的にどのように設定すれば上のコードをビルドできますか?
0475名前は開発中のものです。04/05/10 20:31ID:XWABRbZ8
すいません、依存関係ってとこにいろいろぶち込んだら動きました

「質問書く前にいろいろ試せや、このタマキン野郎が!」って罵ってください
0476名前は開発中のものです。04/05/10 23:11ID:b3c9N5XP
質問書く前にいろいろ試せや、このタマキン野郎が!
047746404/05/11 19:45ID:mn01Zinh
>>476
乙です
0478名前は開発中のものです。04/05/16 15:21ID:cS86WeRi
ほんと低レベルな質問で申し訳ないのだが、弾が難しい。

シューティングってほどでもないんだけど、自機が弾を撃つのね。
でも画面上に一つしか出ないのよ、次撃つと前のが消える。
弾の座標が一個分しかないからなんだろうけど。で、サンプルみたいなのを見てみたら
配列を使ってたのかな?当たり前なんだろうけど、それで弾を一つ一つ管理してたのかと
少し分かった気がしたのですよ。でもどう組めばいいのか解らない・・・・

普通はどのようにしてるのでしょうか?

0479名前は開発中のものです。04/05/16 17:51ID:b74ZsW5L
Cだと
//弾定義
struct _Tama
{
  int x;
  int y;
  bool isAlive;
};
//定義した弾を配列で宣言
struct _Tama tama[16];

//撃つとき
for(i=0;i<16;i++)
{
  if(!tama[i].isAlive)
  {
    tama[i].isAlive = true;
    tama[i].x = 弾出現位置X
    tama[i].y = 弾出現位置Y
    break;
  }
}

が、一番シンプルかな・・・。
0480名前は開発中のものです。04/05/17 17:08ID:6yEm3iSB
なるほど、微妙につかめてきました。どうもです
MOTHERでいうと最初の電気スタンドを倒したところです
0481名前は開発中のものです。04/05/18 16:37ID:H7HjmD2r

すいません、elだとどんな感じになりますか?

bool ってのは真偽の為のものですよね?
0482名前は開発中のものです。04/05/18 17:57ID:mlpq/arS
boolが使えなかったら{
int isAlive;//弾の生存フラグ
で、isAlive=0が画面に出てないヤツ、isAlive=1が画面に出てるヤツとか、
2つの状態を区別できれば、型はなんでも大丈夫だよ
0483名前は開発中のものです。04/05/18 20:20ID:oOiAEM3V
el ってCベースというか、Cそのものだと思うんだが。
0484名前は開発中のものです。04/05/18 21:56ID:z93EQDk5
そのCがあまり分からないのです。

つまり作れないって事です
0485名前は開発中のものです。04/05/18 23:04ID:oOiAEM3V
作れないなら、まぁ、がんばれというか、勉強してください。

479さんの上げた例はCなので多分問題なくいけるはずですが。
使用言語の基本書式とか理解してないとゲーム以前の問題になりませんか。

「猫でもわかる」でぐぐったりしてもう少し基礎の所からはじめるのをお勧めします。
もしくはツクール。
0486名前は開発中のものです。04/05/19 02:06ID:39xvAhxl
Cできなかったらelもあまり分からないことないですか?
0487名前は開発中のものです。04/05/19 02:48ID:KEtzYPtB
>>486
学習ガイドライン
1.Cを覚える(教科書は「猫でもわかる〜」でOK)

2.elのサンプルコードを読む(判らない部分はとりあえずgoogleへ)

3.elのサンプルコードを改造する(一ヶ所変えるたびにコンパイルして実行)

4.本番(もう何も言うことはない)

途中のステップをとばすと「自分が何を判らないのか判らない」状態にはまるから
トータルで考えれば時間の無駄になるよん。
048847804/05/19 16:33ID:ryT9K2cQ
親切な助言どうもです。
Cは基礎は大丈夫だと思います。まあ、これも勉強します。

>2.elのサンプルコードを読む(判らない部分はとりあえずgoogleへ)

>3.elのサンプルコードを改造する(一ヶ所変えるたびにコンパイルして実行)

で、今ここら辺をやっているわけですがSc2のコードを見て弾の部分を理解しようと試みています。
余計なものが多くてややこしいですが、頑張ってれば理解できそうな感じです。
0489名前は開発中のものです。04/05/19 16:52ID:ryT9K2cQ
とと、いろいろいじってたらエラーの数も減ってきて遂に0に。
もう少し頑張ってみれば何とかなりそうです。

やっぱ成長するにはいろいろ悩まないと駄目ですね。
0490名前は開発中のものです。04/05/19 20:50ID:AQMqopBj
>>488 君は >>484 とは別人なのかな?
0491名前は開発中のものです。04/05/20 17:21ID:Mw1SlL99
>>490
いや、同じです
というか>>484以外はだいたい自分です、>>464です。
049246404/05/22 14:11ID:ptk8g+iv
>>479
最初は何のことだか解らなかったのですが、構造体ということがやっと解りましたw
これは便利ですね、少し賢くなりました。どうもです
049346404/05/25 16:53ID:QdGCgPCN
構造体と++のクラスってのは似たようなものですか?
0494名前は開発中のものです。04/05/25 19:01ID:FiBx1oTV
struct X
{
  int a;
};


class X
{
public:
  int a;
}:
はかなり似てます。
0495名前は開発中のものです。04/05/25 19:02ID:FiBx1oTV
あ・・・・・・・。

誤) }:
正) };
049646404/05/26 22:39ID:U7ffWaSi
どうもです
0497HSPビギナー04/06/21 18:45ID:CIr1o5ig
初めまして。今日からHSPを学ぼうと思っております。初心者ですがよろしくお願いします。
それで、さっき5時間くらいかけて初めて数当てゲームぽいものできたのですが、ここにソース貼り付けたら何かアドバイスしていただけるのでしょうか?
0498名前は開発中のものです。04/06/21 23:04ID:M6UaUL66
>>497
数当てゲーム程度の規模だとあまり工夫の余地がないのでアドバイスしにくいかもなあ。
「上手く動かない」とかならともかく
0499HSPビギナー04/06/21 23:32ID:CIr1o5ig
>>497
レスありがとです。そですか〜、では次に簡単なものって何があるか分かります?テトリスとかですかねぇ・・?
0500HSPビギナー04/06/21 23:35ID:CIr1o5ig
連レススマソ
上の>>497>>498の間違いです_| ̄|○
0501名前は開発中のものです。04/06/23 12:50ID:MYfPkn/Q
>>500
15パズル。
数当てで使ってると思われるinputなどのコントロールを使わないやつを練習すべし。
0502HSPビギナー04/06/30 20:16ID:vWGgncp3
一週間ぶりにカキコします_| ̄|○
15パズル作ろうとしてるんですが、どうやったら作れるのかまだ分かりません。
自分的に考えているのは↓
1.まず○を → ○○○○
         ○○○○
         ○○○

と表示し、
2.次に○のなかに数字を振り分け、

3.最後にクリックすれば○が無い方向に動く

というようにすればできると思うのですがどうなのでしょうか?

これであっているのなら、まず初めのどうやったら○が並ぶのかがいまいち分かりません_| ̄|○
教えて君ですいませんが、お願いします。

P.S 長文&読みにくい文章でスマソです_| ̄|○
0503HSPビギナー04/06/30 20:24ID:vWGgncp3
連レススマソ

○○○○
○○○○
○○○
と表示させたかったのですがずれました_| ̄|○
0504名前は開発中のものです。04/07/01 02:59ID:Er33M+6r
>>502
01020304<改行>
05060708<改行>
09101112<改行>
131415■<改行>
HSPはしらないけど、↑みたいに表示すれば文字だけでも表示できる。
上下左右を押すと■がその方向の数字と入れ替わるようにすれば充分かと。
050550104/07/01 16:23ID:Uuze0tzS
>>502
504の言うように、空白が移動方向のパーツと入れ替わるようにすればいい。
ポイントは配列変数、空白の座標の管理だな。
表示は各パーツごとに表示する。こんな感じ。テキトーに改行してくれ。

//パーツの表示サイズ
#define PARTX 32
#define PARTY 32
#const PARTBX PARTX-2
#const PARTBY PARTY-2

dim part,4,4:px=3:py=3//配列宣言と空白の座標

//配列に数値を格納
i=1:repeat 4:y=cnt:repeat 4:part.cnt.y=i:i++:loop:loop
part.px.py=0//空白部分は0にする

//表示してみる
color:boxf
repeat 4:y=cnt:repeat 4
if part.cnt.y {
xx=cnt*PARTX:yy=y*PARTY
color ,,255:boxf xx,yy,xx+PARTBX,yy+PARTBY
color 255:pos xx,yy:mes part.cnt.y
}
loop:loop

stop
0506名前は開発中のものです。04/07/02 12:25ID:u1M+Bkgk
フリーでRPGには何が必要ですか?
win98を使っています
0507名前は開発中のものです。04/07/03 21:18ID:dqxJIYXl
自分が考えていることを的確に相手に伝える文章力
0508名前は開発中のものです。04/07/04 02:44ID:/gx8vrG/
知性
0509HSPビギナー04/07/12 01:52ID:NjMiC/7h
>>505
自分なりに解釈してみました。

//パーツの表示サイズ(定義しておく)
#define PARTX 32 //PARTXは32である
#define PARTY 32 //PARTYは32である
#const PARTBX PARTX-2 //PARTBXはPARTX-2である(つまりこの場合は30である)
#const PARTBY PARTY-2 //PARTBYはPARTY-2である(つまりこの場合は30である)
dim part,4,4 //配列宣言(part 0,0 から3,3 まで使用できるようにする)
px=3:py=3 //空白の座標
//配列に数値を格納
i=1 //とりあえずiに1を代入
repeat 4 //4回繰り返す
y=cnt //とりあえずyにcntを代入(初めのリピートについての回数になる)
repeat 4 //4回繰り返す
part.cnt.y=i //part.cnt.yの座標の値はi(この場合のcntは後の方のリピートについての回数)
i++ //iに1を加える
loop //後のrepeatについてのループ
loop //初めのrepeatについてのループ
part.px.py=0 //空白部分は0にする(つまりpart 3.3は0)
0510HSPビギナー04/07/12 01:55ID:NjMiC/7h
//表示してみる
color //色の設定(ここでは黒)
boxf //塗りつぶし(指定していないので背景が塗りつぶされる)
repeat 4 //4回繰り返す
y=cnt //yにcnt(ループ回数)を代入
repeat 4 //4回繰り返す
if part.cnt.y { //もしpart.cnt.yなら
xx=cnt*PARTX //cnt*PARTXをxxとする
yy=y*PARTY //y*PARTYをyyとする
color ,,255 //ここでは青色に設定している
boxf xx,yy,xx+PARTBX,yy+PARTBY //(xx,yy)と(xx+PARTX,yy+PARTBY)を左上、右下の点として、矩形(四角形)を塗りつぶす。
//描画色は、color命令で設定されたものになる。
color 255 //色の変更(ここでは赤色にしてある)
pos xx,yy //カレントポジションを(xx.yy)に指定
mes part.cnt.y //カレントポジションからpart.cnt.yを表示
} //上のことをまとめてする(xx=からmesまで)
loop //後のrepeatについてのループ
loop //初めのrepeatについてのループ
stop //プログラムの実行を一時中断
一行ごとに説明入れてみたので長くなりました_| ̄|○
違ってたら指摘おねです_| ̄|○
(ってかこんな説明いれるのに凄い時間がかかった俺って・・・| ̄|○)
051150104/07/12 21:06ID:Fg4Dow09
>>510
あってる。準備と表示の基本がわかったと思う。
あとは表示部分をサブルーチンにしてしまい、以下の段取りで作っていけばいいかと。
*スタート
・準備。(配列に数字を格納する)
・最初の配置表示。(表示サブルーチンを呼ぶ)
・キー入力を待つ。(いわゆるスタートボタンを待つ待機)
 この時、開始のキーを画面に表示してアナウンスするのが望ましい。
 例:「クリックでスタート」とか。
・シャッフル開始。(空白を300回くらいランダム移動させる)
・シャッフル後の配置表示。(表示サブルーチンを呼ぶ)
 この時、シャッフルで空白を一回動かす度に呼べば、
 プレイヤーにシャッフル中の画面を見せる事になる。そこはお好みで。
*メインループ
・プレイヤーのキー入力を待つ。(マウスでもキーボードでもお好きに)
・空白が動いたら配置表示。(表示サブルーチンを呼ぶ)
・揃ったかどうか判定。
・揃ったらメインループを抜ける。(*揃ったへ)
・揃ってなければ *メインループへ。
*揃った
・揃ったうまを表示。
・プレイヤーのキー入力を待つ。
・*スタートへ。(繰り返し遊べるようにする)

メインループは当然無限ループになるから、waitかawaitは忘れずに。
わからなくなったらまた聞いてくれ。
0512HSPビギナー04/07/13 22:14ID:OxDPuipy
ありがとうございます。
で、いきなりなんですが空白と移動方向のパーツをどうすれば入れ替わるのかが分かりません・・・
repeat
await 10
stick key,0
if key!0 : gosub *keyget
loop
*keyget
if key=1 :
if key=4 :
if key=2 :
if key=8 :
return

ifの後に空白と移動方向のパーツの入れ替えを行いたいのです。
よろしくお願いします。(表示は504にあるソースを引用させてもらってます)
0513名前は開発中のものです。04/07/13 22:43ID:N2yNRIPu
焦る気持ちは解るが、もう少し自分の力で試行錯誤してみようとは思わないのかね?
0514名前は開発中のものです。04/07/13 23:14ID:hVT4K+XE
o 自分が初心者であることを全面に出す
o 「よろしくお願いします」

これも嫌われるのでやめた方がいいですよ
0515HSPビギナー04/07/14 06:24ID:MKaeeCfq
>>513,514
そうですね・・以後気をつけますλ....
■ このスレッドは過去ログ倉庫に格納されています