今日から必死で1から全て学んでゲーム作成します
■ このスレッドは過去ログ倉庫に格納されています
0001松田 ◆cobo4pcvHY
03/02/06 21:28ID:+Sp/g0d7言語の難しさから逃げていては駄目だ!お前はゲームを作りたいのだろ!?
という悟りを開き、今日からプログラム言語を覚え、そして
プログラムツールで作ります!今持ってるものは・・・。
6才年下の弟の持ってる技術(厨2)の教科書。
アクティブベーシック。(vectorより入手)
・・・作れるのだろうか!?もちろん古本屋で買いあさってくるが
(作れ次第、いずれうpします・・・。いつまでかか(ry))
0710無料動画直リン
03/08/02 23:12ID:2a9WEOLS0711名前は開発中のものです。
03/08/03 00:36ID:9A+1R0GDhttp://homepage3.nifty.com/coco-nut/
0712名前は開発中のものです。
03/08/03 03:32ID:kZhxsxvC自分は小学3年の頃にPC6001でベーシックを使い
ミニゲームなど作成していましたが
2ヶ月前時間の余裕ができパソコンを購入いたしました
パソコンも便利になりましたねぇ・・・・
ところでベーシック打ち込むにはどうするのです?これ・・・
0713名前は開発中のものです。
03/08/03 08:11ID:A14jwxE/アクティブベーシックをダウンロードすればOK。
無料で窓の社とかで手に入るから
0714名前は開発中のものです。
03/08/03 11:51ID:SNUksHjvActiveBasicでは#includeしないとN88言語は使えないよ。
方法はヘルプに書いてあるから。
0715名前は開発中のものです。
03/08/03 12:01ID:SNUksHjvリリースコンパイルをやれ。
っていうか本家HPに解説ページがあるわけだが。
0716名前は開発中のものです。
03/08/03 12:36ID:A14jwxE/どうもありがとうございました。
これって、N88言語って言うんですか、BASIC言語かと思ってました。
初心者ゆえなにぶんお許しを・・・・
では、早速本家へ行って調べてきます。アドレスはttp://www2s.biglobe.ne.jp/~yamadai/activebasic/introduce/index.htmlでいいんですよね?
0717_
03/08/03 13:13ID:+uv398Jj0718名前は開発中のものです。
03/08/03 13:46ID:SNUksHjvそれそれ、あとはN88BASICスタイルのコンパイル解説↓
ttp://www2s.biglobe.ne.jp/~yamadai/activebasic/introduce/step12/index.html
で数当てとかがあるから参考に。
けどActiveBasicを使うなら他の解説(RADツールとか)も見ておいた方が良い。
0719名前は開発中のものです。
03/08/03 15:16ID:A14jwxE/#include "filepath"
10 REM 数あて
20 A=5
30 FOR K=1 TO 3
40 PRINT k;“回目”
50 PRINT “数は”
60 INPUT B
70 IF B=A THEN PRINT “正解”:GOTO 110
80 IF B<A THEN PRINT “もっと大きい”
90 IF B>A THEN PRINT “もっと小さい”
100 NEXT K
110 END
ではいけないんでしょうか?
ついでに拡張子がabpのファイルを開こうとしたらプロジェクトエディタOR.EXEが見つからないとまで表示されるようにまで・・・
うう、、助けてください。
0720名前は開発中のものです。
03/08/03 15:18ID:A14jwxE/>>719は無視してください。
0721名前は開発中のものです。
03/08/03 15:34ID:A14jwxE/abpのファイルを開こうとしたらプロジェクトエディタOR.EXEが見つからないとか言われる始末、もしよろしければ対処法教えてください。
0722名前は開発中のものです。
03/08/03 15:57ID:SNUksHjv何をもとに作った方法なんだ?
漏れの弟の技術の教科書にはもっと文字数があったが。
見つからないってのは入れてるフォルダがおかしいんじゃない?
abpファイルをエディタと同じフォルダに置いてみれ、それで駄目なら再インストールして見ろ。
0723名前は開発中のものです。
03/08/03 16:01ID:A14jwxE/同じフォルダには入っているんだが・・・
作成には少ししか支障をきたさないし、ま、いいか。
ん?もっと文字数ありますか?同じ教科書ならP217でいいんですよね?
0724名前は開発中のものです。
03/08/03 16:02ID:mX7izAfK0725名前は開発中のものです。
03/08/03 16:32ID:aHBD8rYA最初に数当て作って、DQ戦闘作って、その後は?
0726名前は開発中のものです。
03/08/03 17:05ID:KjmQRT+u無料動画で抜きまくれ!
http://www.exciteroom.com/
0727GET!DVD
03/08/03 17:21ID:hgEDcEDo★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★
☆★ 送料激安! スピード発送! 商品豊富!
★☆ http://www.get-dvd.com
☆★ 激安DVDショップ 「GETDVDドットコム」
★☆ http://www.get-dvd.com
☆★ 今すぐアクセス Let’s Go! 急げ!
★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★
0728名前は開発中のものです。
03/08/03 17:23ID:GBDhvRMVint main()
{
int Number=1+rand()%100;
int Answer;
for(int i=0; Answer != Number; i++)
{
if(i == 0)
printf("数当てゲーム。1から100のどれかを入力しろ。=>");
else
printf("ゴルァ!違う!もう一回だ!=>");
scanf("%d",&Answer);
}
printf("おー、すげーな。%d回目で正解するとは。\n",i);
return 0;
}
0729↑
03/08/03 17:24ID:BycttfKA0730728
03/08/03 17:42ID:GBDhvRMVん?どこって?このプログラムを何に入力するのかってこと?
適当なテキストエディタに入力して拡張子を.cに変える。
で、コンパイルする。
もしかしてこのプログラムに間違ってるところある?
0731_
03/08/03 18:10ID:+uv398Jj0732名前は開発中のものです。
03/08/03 18:17ID:b6f11ros無限ループはちょっとなぁ・・・
>int Number=1+rand()%100;
これってCでできたっけ?C++じゃない?
>printf("おー、すげーな。%d回目で正解するとは。\n",i);
一発で正解したら「0回目」でいいのか?
0733名前は開発中のものです。
03/08/03 19:08ID:pMamaAsd0734名前は開発中のものです。
03/08/03 19:17ID:A14jwxE/70 PRINT "アタリ!"じゃーね♪
80 END
という風にやると、すぐ画面が消えて、70の文字が見えないんですよね。
70の画面を何秒か残すにはどうしたらいいのでしょうか?
0735名前は開発中のものです。
03/08/03 19:20ID:pMamaAsdINPUT A とかやって。
0736名前は開発中のものです。
03/08/03 19:21ID:pMamaAsd0737名前は開発中のものです。
03/08/03 19:38ID:A14jwxE/0738名前は開発中のものです。
03/08/03 19:39ID:A14jwxE/80 INPUT A
90 END
じゃ、あきらかに無理でしょうし。
0739名前は開発中のものです。
03/08/03 19:47ID:pMamaAsdINPUT A ってAにキーボードから値を入力ってことじゃないの?
だからキーを入力してリターンキーを入力するまで処理がとまるんじゃないの?
0740名前は開発中のものです。
03/08/03 19:50ID:A14jwxE/0741_
03/08/03 19:59ID:+uv398Jj0742_
03/08/03 20:37ID:feHCXCJs0743名前は開発中のものです。
03/08/03 20:48ID:KjmQRT+u無料で動画が見れます。
http://www.geisyagirl.com/
0744名前は開発中のものです。
03/08/04 00:10ID:5xtc8U00■2ちゃんねらー分布地図 Part6■
ただいま2ちゃんねらー分布地図の製作を行っています。
お手数ですが、時間に余裕がありましたら
本スレに都道府県と市町村名をカキコしてください。
現時点での分布はこの図のようになっています
http://map2ch.tripod.co.jp/map.png
※郡部にお住まいの方は郡と町、村まで
政令指定都市にお住まいの方は区までお願いします。
2ちゃんねらー分布地図 Part6
http://life2.2ch.net/test/read.cgi/kankon/1059914321/ ←書きこみはコチラ
0745名前は開発中のものです。
03/08/04 07:43ID:+iE/9WGh数字当てゲーム、RPG風に作ってるんですが、特定の文字(5とか)を入力したときのみ、数を当てるのではなく画面が閉じるようにできますか?(つまり逃げる)
0746_
03/08/04 08:08ID:bvAiw/MJ0747名前は開発中のものです。
03/08/04 09:33ID:yTB+9xKs0748名前は開発中のものです。
03/08/04 09:55ID:+iE/9WGhみたいなやつですよね?
その場合“ANS>N”は何に変更すればいいのでしょうか?
0749名前は開発中のものです。
03/08/04 11:13ID:poXUb0RX>110 IF ANS>N THEN PRINT "もっと大きいよ":GOTO 900
この前に
IF ANS="ループ抜けの文字" THEN PRINT "終了します" GOTO 処理終了
を書けばいいんじゃないのかなぁ
0750名前は開発中のものです。
03/08/04 11:30ID:+iE/9WGh#N88BASIC
0 DIM ANS,N
10 RANDOMIZE
20 ANS=Int(Rnd()*5+1)
30 PRINT "スライムが現れた。"
40 PRINT "呪文一覧"
50 PRINT "1、ファイヤー"
60 PRINT "2、サンダー"
70 PRINT "3、ブリザード"
80 PRINT "4、アース"
90 PRINT "5、ウォーター"
100 INPUT "使いたい呪文の番号を記入してください。->",N
110 IF ANS="6" THEN PRINT "終了します" GOTO 150
120 IF ANS<N THEN PRINT "まったく効果が無いようだ。":GOTO 900
130 IF ANS>N THEN PRINT "まったく効果が無いようだ。":GOTO 900
140 PRINT "スライムを倒した。"
150 END
160 PRINT "スライムの攻撃!1ダメージ"
170 PRINT "反撃チャンス!":GOTO 100
で、いいんですよね?ついでに1ダメージの1を乱数にしたいんですけど。
質問ばかりですみません。ある程度、調べたつもりなんですけど。
0751_
03/08/04 11:31ID:bvAiw/MJ0752名前は開発中のものです。
03/08/04 16:29ID:WMzJdvlcじゃないですかね
あとANS=Nの時の処理はどっかにあるんですかね
140に飛ぶにはどうなればいいのかも
0753名前は開発中のものです。
03/08/04 18:11ID:+iE/9WGh>あとANS=Nの時の処理はどっかにあるんですかね
>140に飛ぶにはどうなればいいのかも
すいません。よくわかりません。
0754名前は開発中のものです。
03/08/04 18:39ID:WMzJdvlcスライムは1発で倒せるんですね
あと120と130のGOTO 900は GOTO 160 じゃないですか
それとも900に何かあるんですか
0755名前は開発中のものです。
03/08/04 19:00ID:+iE/9WGh番号が飛んどいた変更したりするのが楽なんで900とかにしといたんですけど、他の人は使わないかなぁ。
って思いまして。
ゲームの方はわりと完成しかけてる(つもり)なのですが、まだわからないことがありまして。
例えば・・・
1、1ダメージを(ランダム)ダメージにするとか、
2、スライムの体力を設定するとか、主人公の体力も設定するとか。(何回ミスったらだめとか)
0756!728
03/08/05 21:16ID:TQS0v9ouオブジェクト指向の本とか読んでわかったつもりになってたけど、実践が疎かなのはやっぱり痛いなぁ。情けないぜ。
添削、アドバイス等、お願いします・・・。
// main.cpp
#include "number.h"
CNumber* CNum;
int main()
{
CNum = new CNumber;
CNum->Run( 9 );
delete CNum;
return 0;
}
// number.h
class CNumber
{
int m_iNumber;
int m_iAnswer;
int m_iCount;
void InitRandomNumber( int max );
bool IsHit();
public:
CNumber();
void Run( int num );
};
0757!728
03/08/05 21:18ID:TQS0v9ou#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#include "number.h"
void CNumber::InitRandomNumber( int max )
{
srand( (unsigned)time( NULL ) );
m_iNumber = 1 + rand()%max;
}
bool CNumber::IsHit()
{
if( m_iNumber == m_iAnswer )
{
printf( "おー、すげーな。%d回目で正解するとは。\n", m_iCount );
return 1;
}else{
printf( "ゴルァ!違う!もう一回だ!=>" );
return 0;
}
}
0758!728 ぐは、焦ってインデントミスった
03/08/05 21:20ID:TQS0v9ouvoid CNumber::Run( int num )
{
InitRandomNumber( num );
printf( "数当てゲーム。1から%dのどれかを入力。0で終了。=>", num );
do
{
scanf( "%d", &m_iAnswer );
m_iCount++;
if( m_iAnswer == 0 ) break;
} while( !IsHit() );
}
// このスレageても(・∀・)イイの?
0759名前は開発中のものです。
03/08/05 21:24ID:rlEHxqWPこれで1、と6を押すと終了する事と終了する時に
リターンを押すまでウィンドウが閉じないようにできますた
かなり適当だがまあ参考にでもしてくれ
2、はスライムの体力を変数に入れそれからダメージを引き
0になったら倒したと出力
主人公の体力も同様にしてランダムのダメージを引く
0になったらゲームオーバーってところでどう?
0760名前は開発中のものです。
03/08/05 21:27ID:rlEHxqWP#N88BASIC
0 DIM ANS,N,A
10 RANDOMIZE
20 ANS=Int(Rnd()*5+1)
30 PRINT "スライムが現れた。"
40 PRINT "呪文一覧"
50 PRINT "1、ファイヤー"
60 PRINT "2、サンダー"
70 PRINT "3、ブリザード"
80 PRINT "4、アース"
90 PRINT "5、ウォーター"
100 INPUT "使いたい呪文の番号を記入してください。->",N
110 IF N=6 THEN PRINT "終了します":GOTO 150
120 IF ANS<N THEN PRINT "まったく効果が無いようだ。":GOTO 160
130 IF ANS>N THEN PRINT "まったく効果が無いようだ。":GOTO 160
140 PRINT "スライムを倒した。"
150 INPUT "",A
155 END
160 A=Int(Rnd()*5+1)
165 PRINT "スライムの攻撃!"+Str$(A)+"ダメージ"
170 PRINT "反撃チャンス!":GOTO 100
0761名前は開発中のものです。
03/08/05 22:30ID:b2rLHy7Z凄い・・・、ありがとうございます。
165のダメージ変数はなんだか上手くいきませんでした、俺だけですかね?
2、なんとなくわかるような気がするんで、これからN88の場合の計算方法調べてきます!
0762名前は開発中のものです。
03/08/05 23:36ID:b2rLHy7Z検索の仕方が変かな?
0763名前は開発中のものです。
03/08/06 00:22ID:f+bUrJ4I下に実行結果を示す
ttp://upload.fam.cx/cgi-bin/img-box/pqs30806002013.jpg
0764名前は開発中のものです。
03/08/06 02:42ID:KJBZM9DDとりあえずDQ戦闘作るところから始めます。
でも今日は遅いのでとりあえず睡眠。
0765名前は開発中のものです。
03/08/06 07:22ID:2U3UXzN00 DIM ANS,N
10 RANDOMIZE
20 ANS=Int(Rnd()*6+1)
30 PRINT "スライムが現れた。"
40 PRINT "呪文一覧"
50 PRINT "1、ファイヤー"
60 PRINT "2、サンダー"
70 PRINT "3、ブリザード"
80 PRINT "4、ウォーター"
90 PRINT "5、アース"
100 PRINT "6、ストーン"
110 PRINT "7、逃げる。"
500 INPUT "使いたい呪文の番号を記入してください。->",N
510 IF N=11 THEN PRINT "逃げ出した!":GOTO 550
520 IF ANS<N THEN PRINT "まったく効果が無いようだ。":GOTO 800
530 IF ANS>N THEN PRINT "まったく効果が無いようだ。":GOTO 800
540 PRINT "スライムを倒した。"
550 END
790 A=Int(Rnd()*5+1)
800 PRINT "スライムの攻撃!"+Str$(A)+"ダメージ"
810 PRINT "反撃チャンス!":GOTO 500
やっぱ変わりませんねぇ・・・
って言うか、質問厨ですみません。(汗
0766名前は開発中のものです。
03/08/06 09:36ID:PA4bRhvBAが定義されてません
0 DIM ANS,N → 0 DIM ANS,N,A
>110 PRINT "7、逃げる。"
なんで7で逃げるなのに
>510 IF N=11 THEN PRINT "逃げ出した!":GOTO 550
11で逃げ出したを表示するんだ?
0767名前は開発中のものです。
03/08/06 09:57ID:2U3UXzN0と、言う事で変更しました。
#N88BASIC
0 DIM ANS,N,A
10 RANDOMIZE
20 ANS=Int(Rnd()*7+1)
30 PRINT "スライムが現れた。"
40 PRINT "呪文一覧"
50 PRINT "1、ファイヤー"
60 PRINT "2、サンダー"
70 PRINT "3、ブリザード"
80 PRINT "4、ウォーター"
90 PRINT "6、アース"
100 PRINT "7、ストーン"
110 PRINT "8、逃げる。(終了)"
120 INPUT "使いたい呪文の番号を記入してください。->",N
130 IF N=8 THEN PRINT "終了します。":GOTO 160
140 IF ANS<N THEN PRINT "まったく効果が無いようだ。":GOTO 190
150 IF ANS>N THEN PRINT "まったく効果が無いようだ。":GOTO 190
160 PRINT "スライムを倒した。"
170 INPUT "",A
180 END
190 A=Int(Rnd()*10+1)
200 PRINT "スライムの攻撃!"+Str$(A)+"ダメージ"
210 PRINT "反撃チャンス!":GOTO 120
こんな感じかな?ちなみに140と150は GO TO 190 じゃないとダメージが0になるようです。
0768名前は開発中のものです。
03/08/06 10:04ID:PA4bRhvBそりゃそうですよ
>190 A=Int(Rnd()*10+1)
ここでAに1〜10までの数字を入れてるんですから
>130 IF N=8 THEN PRINT "終了します。":GOTO 160
160にいったらスライム倒しちまうぞ
他に問題点はありますか?
0769名前は開発中のものです。
03/08/06 10:57ID:2U3UXzN0そりゃそうなんですか・・・・
出直してきます。
ちなみに130は投稿後すぐ直しときましたんで、多分もう大丈夫だと思います。
ちょこっと改良したい所があるんで、終ったらまた、ソースの越したいと思います。
0770名前は開発中のものです。
03/08/06 19:35ID:2U3UXzN0#N88BASIC
0 DIM ANS,N,A
10 RANDOMIZE
20 ANS=Int(Rnd()*7+1)
30 PRINT "スライムが現れた。"
40 PRINT "呪文一覧"
50 PRINT "1、ファイヤー"
60 PRINT "2、サンダー"
70 PRINT "3、ブリザード"
80 PRINT "4、ウォーター"
90 PRINT "6、アース"
100 PRINT "7、ストーン"
110 PRINT "8、逃げる。(終了)"
120 INPUT "使いたい呪文の番号を記入してください。->",N
130 IF N=8 THEN PRINT "終了します。":GOTO 170
135 A=Int(Rnd()*3+1)
140 IF ANS<N THEN PRINT "スライムに"+Str$(A)+"ダメージ!":GOTO 190
145 A=Int(Rnd()*3+1)
150 IF ANS>N THEN PRINT "スライムに"+Str$(A)+"ダメージ!":GOTO 190
155 A=Int(Rnd()*100+30)
160 IF ANS=N THEN PRINT "クリティカルヒット!スライムに"+Str$(A)+"ダメージ!"
165 PRINT "スライムを倒した。"
170 INPUT "",A
180 END
190 A=Int(Rnd()*5+1)
200 PRINT "スライムの攻撃!"+Str$(A)+"ダメージ"
210 PRINT "反撃チャンス!":GOTO 120
こんな、感じ。RPGの雰囲気は出てると思います。まあ、こんだけですが(汗
後少ししたら、相手と自分のHP作れそう。・・・・・あくまで勘ですが・・
ところでこのスレ、ageてもいいんですかね?
0771名前は開発中のものです。
03/08/06 22:38ID:JTND/yTp特に関係ないが 5、 がないのが気になる
俺としてはageてもいいよ
0772名前は開発中のものです。
03/08/06 22:52ID:t1xYEgmx0773名前は開発中のものです。
03/08/06 23:00ID:qSFAl4DBおれもCやってるんだけどまだオブジェクト指向の使い方が良く分からん。
ゆえに評価はできん。
なんとなくどんな概念かはわかったんだけどな
0774_
03/08/06 23:26ID:xkLXDOht0775名前は開発中のものです。
03/08/06 23:35ID:wvG73zITマダムから美少女まで盛りだくさんのおっぱいが・・・
胸フェチ必見。当然モロ見え!
http://55.40.59.72/index.html
0776_
03/08/06 23:37ID:xkLXDOht0777名前は開発中のものです。
03/08/07 01:14ID:cFggxyoVオブジェクト化するなら、ゲーム管理と数字管理は別にするべきなんだが、
このコードサイズでは、そこまでしなくてもいいだろう。
CNumberは、ある数値を保持し、外部から渡された数値がそれと一致するかどうかを
チェックできるオブジェクト、になるのかな?そうすると、CNumber::Run()は、main()に
直接配置するか、ゲーム管理オブジェクトが実装することになるか。
あと、CNumberは常に何らかの数値を持たなければならないのだから、
CNumber::InitRandomNumber()はコンストラクタでおこなうべきことでは?
この場合、引数なしのデフォルトコンストラクタは、ないほうがいいかもしれない。
0778名前は開発中のものです。
03/08/07 01:21ID:6f3EqmyZ中学生の頃に覚えたオナニーで性感帯はしっかり開発されており
すっかりグッチョリの様子。
無料ムービーはこちらから
親切、安心サイト
http://www.j-girlmovie.com/
0779_
03/08/07 03:05ID:LvooB/gQ0780_
03/08/07 03:46ID:S+ggGXg50781_
03/08/07 04:29ID:bLnqziTa0782名前は開発中のものです。
03/08/07 05:58ID:TYLlWGiahttp://endou.kir.jp/yuminet/link.html
http://endou.kir.jp/marimo/link.html
0783名前は開発中のものです。
03/08/07 07:15ID:ci2OouMShttp://homepage3.nifty.com/coco-nut/
0784756
03/08/08 01:11ID:rkg+simlアドバイスありがとうございます。
"ゲーム管理"がまだちょっと漠然とした状態ですが、次はもうちょっと
オブジェクト数の多いゲームを作ってみようと思っています。
0785名前は開発中のものです。
03/08/08 10:40ID:hLqic0Q90 DIM ANS,N,A,b
10 RANDOMIZE
20 ANS=Int(Rnd()*7+1)
30 PRINT "スライムが現れた。"
40 PRINT "呪文一覧"
50 PRINT "1、ファイヤー"
60 PRINT "2、サンダー"
70 PRINT "3、ブリザード"
80 PRINT "4、ウォーター"
85 PRINT "5、ライトニング"
90 PRINT "6、アース"
100 PRINT "7、ストーン"
110 PRINT "8、逃げる。(終了)"
120 INPUT "使いたい呪文の番号を記入してください。->",N
130 IF N=8 THEN PRINT "終了します。":GOTO 170
135 A=Int(Rnd()*3+1)
140 IF ANS<N THEN PRINT "スライムに"+Str$(A)+"ダメージ!":GOTO 190
145 A=Int(Rnd()*3+1)
150 IF ANS>N THEN PRINT "スライムに"+Str$(A)+"ダメージ!":GOTO 190
155 A=Int(Rnd()*50+30)
160 IF ANS=N THEN PRINT "クリティカルヒット!スライムに"+Str$(A)+"ダメージ!"
170 PRINT "スライムを倒した。"
175 INPUT "",A
180 END
190 A=Int(Rnd()*10+1)
195 b=10
200 PRINT "スライムの攻撃!"b-Str$(A)+"ダメージ"
205 if b=0 THEN PRINT "残り体力が減った。"
210 PRINT "反撃チャンス!":GOTO 120
とやったら主人公の体力らしきものが以上に高くなるんですがどうなんでしょうか?
0786名前は開発中のものです。
03/08/08 11:30ID:kEzo2gOHこれは書き方がおかしいので
200 PRINT "スライムの攻撃!"+Str$(b-A)+"ダメージ"
こう書くか・・・
でも b がたぶん主人公の体力だと思われるので普通に
200 PRINT "スライムの攻撃!"+Str$(A)+"ダメージ"
とやって次の
>205 if b=0 THEN PRINT "残り体力が減った。"
これを
202 b=b-A
205 PRINT "残り体力"+Str$(b)+"。"
とやるか でも
>195 b=10
これを最初の方に書かないと意味ないな
0787名前は開発中のものです。
03/08/08 12:14ID:hLqic0Q90 DIM ANS,N,A,b,c
5 b=10
10 c=30
15 RANDOMIZE
20 ANS=Int(Rnd()*7+1)
30 PRINT "スライムが現れた。"
40 PRINT "呪文一覧"
50 PRINT "1、ファイヤー"
60 PRINT "2、サンダー"
70 PRINT "3、ブリザード"
80 PRINT "4、ウォーター"
85 PRINT "5、ライトニング"
90 PRINT "6、アース"
100 PRINT "7、ストーン"
110 PRINT "8、逃げる。(終了)"
120 INPUT "使いたい呪文の番号を記入してください。->",N
130 IF N=8 THEN PRINT "終了します。":GOTO 170
145 A=Int(Rnd()*10+1)
150 PRINT "スライムに"+Str$(A)+"ダメージ!"
152 c=c-A
153 IF c=0 THEN PRINT "スライム倒した。":GOTO 180
154 PRINT "スライムの番":GOTO 190
155 A=Int(Rnd()*20+1)
160 IF ANS=N THEN PRINT "クリティカルヒット!スライムに"+Str$(A)+"ダメージ!"
162 c=c-A
0788名前は開発中のものです。
03/08/08 12:14ID:hLqic0Q9175 PRINT "スライムの番":GOTO 190
180 INPUT "",A
185 END
190 A=Int(Rnd()*3+1)
200 PRINT "スライムの攻撃!"+Str$(A)+"ダメージ"
202 b=b-A
205 PRINT "残り体力"+Str$(b)+"。"
210 IF b=0 THEN PRINT "GAME OVER":GOTO 180
220 PRINT "反撃チャンス!":GOTO 120
なんとか,ここまでやりとげる事が出来ました。
しかし、問題があり、ダメージが多すぎて0より低い数値になると、倒せなくなるんです。
バグとかありましたらご連絡を。
0789名前は開発中のものです。
03/08/08 13:01ID:kcUizlQe>IF c=0 THEN PRINT "スライム倒した。"
IF c<=0 THEN PRINT "スライム倒した。"
>IF b=0 THEN PRINT "GAME OVER":GOTO 180
IF b<=0 THEN PRINT "GAME OVER":GOTO 180
0以下でもIFが真になるようにする
あとクリティカルヒットが出ませんよ
0790名前は開発中のものです。
03/08/08 15:01ID:hLqic0Q960 PRINT "2、サンダー"
70 PRINT "3、ブリザード"
80 PRINT "4、ウォーター"
85 PRINT "5、ライトニング"
90 PRINT "6、アース"
100 PRINT "7、ストーン"
110 PRINT "8、逃げる。(終了)"
120 INPUT "使いたい呪文の番号を記入してください。->",N
130 IF N=8 THEN PRINT "終了します。":GOTO 180
145 A=Int(Rnd()*10+1)
150 IF ANS<N THEN PRINT "スライムに"+Str$(A)+"ダメージ!"
152 c=c-A
154 IF ANS>N THEN PRINT "スライムに"+Str$(A)+"ダメージ!"
155 c=c-A
0791名前は開発中のものです。
03/08/08 16:29ID:7Y5PF2QY↑
暑さで頭がイカれた夏厨が
わけのわからんホムペを作って調子に乗ってます
みなさんで爆撃して懲らしめましょう
0792名前は開発中のものです。
03/08/08 16:31ID:utM/iXZZ↑
暑さで頭がイカれた夏厨のふりをした大人物のサイトです
わけのわからんホムペを装ってますがハッキング対策完璧…。
今日も大漁で調子に乗ってるようです。
みなさんで爆撃してもっと彼を喜ばせましょう。
0793名前は開発中のものです。
03/08/08 18:56ID:hLqic0Q9#N88BASIC
0 DIM ANS,N,A,b,c
5 b=100
10 c=50
15 RANDOMIZE
30 PRINT "スライムが現れた。"
40 PRINT "呪文一覧"
50 PRINT "1、ファイヤー"
60 PRINT "2、サンダー"
70 PRINT "3、ブリザード"
80 PRINT "4、ウォーター"
90 PRINT "5、ライトニング"
100 PRINT "6、逃げる。(終了)"
115 ANS=Int(Rnd()*5+1)
120 INPUT "使いたい呪文の番号を記入してください。->",N
125 IF N=1 THEN PRINT "ファイヤーを唱えた。":GOTO 145
126 IF N=2 THEN PRINT "サンダーを唱えた。":GOTO 145
127 IF N=3 THEN PRINT "ブリザードを唱えた。":GOTO 145
128 IF N=4 THEN PRINT "ウォーター":GOTO 145
129 IF N=5 THEN PRINT "ライトニングを唱えた。":GOTO 145
135 IF N=6 THEN PRINT "終了します。":GOTO 180
140 PRINT "関係無い文字を入力しないで下さい。":GOTO 120
145 A=Int(Rnd()*10+1)
150 IF ANS<N THEN PRINT "スライムに"+Str$(A)+"ダメージ!"
152 c=c-A
154 IF ANS>N THEN PRINT "スライムに"+Str$(A)+"ダメージ!"
155 c=c-A
0794名前は開発中のものです。
03/08/08 18:57ID:hLqic0Q9160 IF ANS=N THEN PRINT "クリティカルヒット!スライムに"+Str$(A)+"ダメージ!"
162 c=c-A
170 IF c=0 THEN PRINT "スライム倒した。":GOTO 180
171 IF c<=0 THEN PRINT "スライム倒した。":GOTO 180
175 PRINT "スライムの番、残り体力"+Str$(c)+"":GOTO 190
180 INPUT "",A
185 END
190 A=Int(Rnd()*7+1)
200 PRINT "スライムの攻撃!"+Str$(A)+"ダメージ"
202 b=b-A
205 PRINT "残り体力"+Str$(b)+"。"
210 IF b=0 THEN PRINT "GAME OVER":GOTO 180
220 PRINT "反撃チャンス!":GOTO 115
以上です。しかし、表示されてるダメージよりスライムの体力が多く減るのは何故?
0795名前は開発中のものです。
03/08/08 18:59ID:hLqic0Q91、クリティカルヒットする呪文が毎回変わってる。
2、呪文以外の番号を打つと、打ち直される。
3、ちゃんと逃げれる。
4、その他(ぉ
0796名前は開発中のものです。
03/08/08 19:07ID:wg4lQfjc150 IF ANS<N THEN PRINT "スライムに"+Str$(A)+"ダメージ!"
152 c=c-A
154 IF ANS>N THEN PRINT "スライムに"+Str$(A)+"ダメージ!"
155 c=c-A
この辺で GOTO 170 しなくちゃダメ
飛ばないと152と155と162で3回cを引くことになるから
あとは
210 IF b=0 THEN PRINT "GAME OVER":GOTO 180
これも b<=0 にしないと0より小さくなるとGAMEOVERにならないぞ
他は170と171は171だけでいい
0797名前は開発中のものです。
03/08/08 19:13ID:wg4lQfjc> 2、呪文以外の番号を打つと、打ち直される。
> 3、ちゃんと逃げれる。
これはできてると思う
0798名前は開発中のものです。
03/08/08 19:24ID:hLqic0Q9#N88BASIC
0 DIM ANS,N,A,b,c
5 b=100
10 c=50
15 RANDOMIZE
30 PRINT "スライムが現れた。"
40 PRINT "呪文一覧"
50 PRINT "1、ファイヤー"
60 PRINT "2、サンダー"
70 PRINT "3、ブリザード"
80 PRINT "4、ウォーター"
90 PRINT "5、ライトニング"
100 PRINT "6、逃げる。(終了)"
115 ANS=Int(Rnd()*5+1)
120 INPUT "使いたい呪文の番号を記入してください。->",N
125 IF N=1 THEN PRINT "ファイヤーを唱えた。":GOTO 145
126 IF N=2 THEN PRINT "サンダーを唱えた。":GOTO 145
127 IF N=3 THEN PRINT "ブリザードを唱えた。":GOTO 145
128 IF N=4 THEN PRINT "ウォーター":GOTO 145
129 IF N=5 THEN PRINT "ライトニングを唱えた。":GOTO 145
135 IF N=6 THEN PRINT "終了します。":GOTO 180
140 PRINT "関係無い文字を入力しないで下さい。":GOTO 120
145 A=Int(Rnd()*10+1)
0799名前は開発中のものです。
03/08/08 19:25ID:hLqic0Q9152 IF ANS<N THEN c=c-A :GOTO 170
154 IF ANS>N THEN PRINT "スライムに"+Str$(A)+"ダメージ!"
155 IF ANS>N THEN c=c-A :GOTO 170
157 A=Int(Rnd()*20+1)
160 IF ANS=N THEN PRINT "クリティカルヒット!スライムに"+Str$(A)+"ダメージ!"
162 IF ANS=N THEN c=c-A :GOTO 170
170 IF c<=0 THEN PRINT "スライム倒した。":GOTO 180
175 PRINT "スライムの番":GOTO 190
180 INPUT "",A
185 END
190 A=Int(Rnd()*7+1)
200 PRINT "スライムの攻撃!"+Str$(A)+"ダメージ"
202 b=b-A
205 PRINT "残り体力"+Str$(b)+"。"
210 IF b<=0 THEN PRINT "GAME OVER":GOTO 180
220 PRINT "反撃チャンス!":GOTO 115
こんな感じで。ほかに付け加えるべき所はありますか?
0800名前は開発中のものです。
03/08/08 19:29ID:wg4lQfjc完成か
0801名前は開発中のものです。
03/08/09 13:25ID:L0C8hnQ7テストプレイしてくださったり、わからない事を教えてくださった皆様。
まことに感謝しております。
最初は聞いてばかりでしたが、完成が近づくにつれ、質問の数も減ったと思っています。(多分)
数あてゲームも既に完成しましたが、まだBASIC言語の勉強は続けるつもりです。
さて、次はどんなゲームを作ろうか、考えただけでワクワクです。
もしよろしければ、またここで、質問させていただけませんか?(まだ聞くつもりか!?)
0802名前は開発中のものです。
03/08/09 16:48ID:6cgblPMS詳しくはこちら→http://e-rebirth.com/af/in.cgi?id=30
0803名前は開発中のものです。
03/08/10 03:00ID:y5AJHq8O>801
ソースの書き方を勉強してみる気はない?うまく書けば、短く簡潔にまとめられるよ。メンテもしやすくなったりするし。
例えば、
1・変数名をわかりやすくする。(bとかcじゃね)
2・配列を使う(125〜129行を1行にまとめちゃえ!)
3・コメントを入れる(処理のまとまりごとにコメントで区切れば見やすい!)
やっぱ初心者にBASICはいいよなぁ。
0804名前は開発中のものです。
03/08/10 10:50ID:ckv5388Jとりあえず、m=魔法、p=プレイヤー、s=スライム、A=?、にしてみました。
配列?ってどうやるんでしょうか? 1,2,3 じゃ無理ですよね。
0805_
03/08/10 10:56ID:vxsyuW650806_
03/08/10 11:36ID:vxsyuW650807_
03/08/10 13:14ID:JuRMyw+G0808_
03/08/10 13:22ID:o/11yaxt0809_
03/08/10 15:06ID:5c73RWwu■ このスレッドは過去ログ倉庫に格納されています