i/ez/携帯BASIC総合スレ ver.1
1 :非通知さん@アプリ起動中 :2005/04/03(日) 20:38:19 ID:ZyP4Xdks 携帯BASICについて語るスレです。 i/ezBASICの話題もどうぞ。 質問やプログラムうpして盛り上がりましょう。 携帯BASIC http://satoo.jp/ iBASIC - BASIC interpreter for DoCoMo http://cgi.cyborg.ne.jp/~j-saito/cgi-bin/software/ibasic/ Yasu software (トップ→EZPLUS→エンタメ→ezBASIC) http://yasu.rank.nu/ez/ 保管庫@BASIC (まとめサイト) http://tool-2.net/?id=BASIC 荒らし・煽りは放置でお願いします。 プログラム作者は最低でも数字コテを付けるのが望ましいかも。 前スレ iBASICについて語ろうよ… http://hobby7.2ch.net/test/read.cgi/appli/1073196921/
2 :まとめサイト”管理”人 :2005/04/03(日) 20:40:51 ID:MAmFTa8Z >>1 ありがとうございます。 >>all 急いで更新するので前スレは埋めないで下さい。
3 :非通知さん@アプリ起動中 :2005/04/03(日) 21:30:21 ID:F0d+rWC6 >1 乙
4 :826 :2005/04/03(日) 23:52:10 ID:VWwVwp6/ >>1 乙! >>前スレ962 >動かない…orz 最初にマップ画面が表示されるまで、オレの機種でも30秒〜40秒かかるんで、気長に待ってください (3分以上たってもマップが表示されないとかならどこかに機種依存部分がある可能性大 その時は修正します 前スレ>>963 全体のだいたいのプランは出来てるみたいですね 喜んで協力させていただきます
5 :826 :2005/04/03(日) 23:55:09 ID:VWwVwp6/ >>前スレ964 >LTM LT(見渡せる範囲)の最大値(LTのMAXって事で >マップ作成 >MAP[CHARy]=substr(MAP[CHARy],0,CHARx-1)+" "+substr(MAP[CHARy],CHARx,strlen(MAP[CHARy])-CHARx) 文字列データの一箇所だけ変更する命令が無いので、 データの頭〜キャラのxの1つ前迄の文字数分 + " " + キャラのxの1つ後〜最後迄の文字数分 みたいな感じです >「TEST_2」 >text(substr(MAP[CHARy+i],CHARx-1-LT,1+LT*2),64-12*LT,79+12*i) MAPを一行ずつ格納したMAP[]から、 キャラのxのLT分前〜1+LT*2個分 の文字列を呼び出して表示させてます substr関数で存在しない場所を呼び出そうとするとエラーになるので LTMの分だけマップの端に"#"を追加してます
6 :826 :2005/04/03(日) 23:56:01 ID:VWwVwp6/ >>前スレ965 substr(MAP[Y],X,1)=0 ↓ MAP[Y]= substr(MAP[Y],0,x-1) + "0" +substr(MAP[Y],x+1,strlen(MAP[Y],x+1)) これで解るかな(汗 あと数字使った場合、「文字」としてではなく「数値」として扱われてしまう事があるので注意が必要 例 "001"→"1" "111"+"1"→「112」
7 :826 :2005/04/04(月) 00:06:01 ID:px99hjIq >>6 間違った・・・ × MAP[Y]= substr(MAP[Y],0,x-1) + "0" +substr(MAP[Y],x+1,strlen(MAP[Y],x+1)) ○ MAP[Y]= substr(MAP[Y],0,x-1) + "0" +substr(MAP[Y],x+1,strlen(MAP[Y])-(x+1)) 正直オレも訳解らなくなる事があるのでorz
8 :826(連投スマソ) :2005/04/04(月) 00:53:59 ID:px99hjIq >>7 また間違ったよorz なにやってんだオレは・・・ × MAP[Y]= substr(MAP[Y],0,x-1) + "0" +substr(MAP[Y],x+1,strlen(MAP[Y])-(x+1)) ○ MAP[Y]= substr(MAP[Y],0,x) + "0" +substr(MAP[Y],x+1,strlen(MAP[Y])-(x+1)) >>前スレ963 半分しか表示されないってのはおそらく「*」と「#」が半角に化けてるんじゃないかと *#←これが半角で表示されてたら化けてます クラシックだったら設定で全角表示をON iMOMAだったら圧縮設定で変わったような・・・
9 :非通知さん@アプリ起動中 :2005/04/04(月) 01:05:04 ID:INY8+xTq >826氏 半角だったから駄目だったのかorz てか半角から全角に変えたって変えてあったね。何度写しなおしても駄目だから全然進まなかったよ。 ところで826氏はなんかこうしたいとかアイデアある?
10 :非通知さん@アプリ起動中 :2005/04/04(月) 01:10:10 ID:LcsS7voc for Ds= 0 to 80 if input(0) and keyselect then goto"bb" endif sleep(65) A=abs(rand)%6+1 color(255,255,255) frect(0,0,240,240) color(50,160,50) setfont("S") text(A,0,126) next label b color(55,255,255) frect(0,0,240,240) color(0,55,255) text("アタリ",0,126) input() label B input() label bb if A=2 then t=1 endif if t=1 then goto"b" endif これなんですが… アタリが表示されると、input()の効力が無くなってしまいます どうすればいいんでしょうか?
11 :非通知さん@アプリ起動中 :2005/04/04(月) 02:24:50 ID:INY8+xTq >826氏 また質問なんだけど、例えば旧MAP[5][5]に"M"をいれたいときはどうかけばよいの? substr(MAP[5],5,1)="M" MAP[y]の文字列の5番目の文字はM、てやんのかなと思ったらならなかったよorz もう一度基礎から勉強しよう
12 :826(スレ新しくなったから変えた方が良いのかな? :2005/04/04(月) 04:29:53 ID:px99hjIq >>10 input()の効力が無くなったのではなく、 携帯BASICの仕様で「for〜next」の間で「goto」使った場合強制終了 >>11 >また質問なんだけど、例えば旧MAP[5][5]に"M"をいれたいときはどうかけばよいの? MAP[5] = substr(MAP[5],0,5-1) + "M" + substr(MAP[5],5,strlen(MAP[5])-5) 面倒くさいけど、これでOK (因にsubstrでの場所指定は0から始まる アイデアは今の所は特にないです(アイデアとか考えるのはあまり得意な方では・・・
13 :13 :2005/04/04(月) 06:12:05 ID:INY8+xTq 俺もわかりやすくつけたほうがよいかな >12 結構メンドいのね。 アイデアは例えば夜になるとモンスターは寝ちゃうとか、昼間は閉まってる道具屋とか、思いついたらヨロ^^ 一緒に、てもなかなかどう分担してよいのかよくわかんないねf^^;いっそモンスターの部分任せちゃおっかなw M[X座標][Y座標][0]=名前 M[X座標][Y座標][1]=HP M[X座標][Y座標][2]=攻撃力 M[X座標][Y座標][2][3]=命中率 M[X座標][Y座標][2][4]=防御力 M[X座標][Y座標][2][5]=回避率 ちなみにこんな風に配列でモンスターステータス決めると効率悪いかな?
14 :非通知さん@アプリ起動中 :2005/04/04(月) 07:35:16 ID:zKZ0nQeR AIでロボットを戦わせる的なプログラム 「RBSYS」 H=height/2 W=width/2 origin(H,W) soft2("exit") for i=-1 to 1 step 2 x[i]=rand%(W-10) y[i]=rand%(H-10) H[i]=3 next label 0 lock() clear(-W,-H,W*2,H*2) for i=-1 to 1 step 2 color(0,100+(i*100),100+(i*100)) if i=-1 then #1p# else #2p# endif farc(x[i]-5,y[i]-5,10,10) line(x[i],y[i],x[i]+10*cos(r[i])/100,y[i]+10*sin(r[i])/100) if scan=keysoft2 then exit elseif ae[i]=1 then gosub "fa" endif clearinput() if H[i]=0 then goto 1 endif next T=T+1 text("1P:"+H[-1]+" 2P:"+H[1]+" TIME:"+T/10,-W,12-H) unlock(0) goto 0 exit #RBFNC#
15 :非通知さん@アプリ起動中 :2005/04/04(月) 07:37:27 ID:zKZ0nQeR 「RBFNC」 label inx if x[i]<W-10 then x[i]=x[i]+2 endif return label dex if x[i]>10-W then x[i]=x[i]-2 endif return label iny if y[i]<H-10 then y[i]=y[i]+2 endif return label dey if y[i]>10-H then y[i]=y[i]-2 endif return label inr r[i]=r[i]+5 if r[i]>360 then r[i]=r[i]-360 endif return label der r[i]=r[i]-5 if r[i]<0 then r[i]=r[i]+360 endif return label fire if ae[i]=0 then ae[i]=1 axp[i]=5*cos(r[i])/100 ayp[i]=5*sin(r[i])/100 ax[i]=x[i] ay[i]=y[i] endif return label fa line(ax[i],ay[i],ax[i]+axp[i],ay[i]+ayp[i]) ax[i]=ax[i]+axp[i] ay[i]=ay[i]+ayp[i] if abs(ax[i]-x[-i])<8 and abs(ay[i]-y[-i])<8 then H[-i]=H[-i]-1 ae[i]=0 endif if ax[i]>W or ax[i]<-W or ay[i]>H or ay[i]<-H then ae[i]=0 endif return label 1 unlock(0) if i=-1 then txt="2p" else txt="1p" endif text(txt+" win!!",-W,24-H) input()
16 :非通知さん@アプリ起動中 :2005/04/04(月) 07:38:35 ID:zKZ0nQeR 「1p」 if scan=key1 then gosub "inr" endif if scan=key2 then gosub "dey" endif if scan=key3 then gosub "der" endif if scan=key4 then gosub "dex" endif if scan=key5 then gosub "fire" endif if scan=key6 then gosub "inx" endif if scan=key8 then gosub "iny" endif 「2p」 if (y[i]-y[-i])>30 then gosub "dey" endif if (y[i]-y[-i])>0 then e=0 endif if (y[i]-y[-i])<-30 then gosub "iny" endif if (y[i]-y[-i])<0 then e=1 endif if (x[i]-x[-i])>2 then gosub "dex" endif if (x[i]-x[-i])<-2 then gosub "inx" endif if r[i]<>90 and e=1 then gosub "der" endif if e=0 and r[i]<>270 then gosub "inr" endif if abs(x[i]-x[-i])<10 and abs(y[i]-y[-i])<100 then gosub "fire" endif
17 :非通知さん@アプリ起動中 :2005/04/04(月) 07:58:54 ID:zKZ0nQeR んで、AI作るときの条件。 1p、2pのところを書き替える。1pは現在実験用につくったマニュアル操作プログラムが書いている 直接変数に値を代入せずサブルーチン呼び出しで変更(不正防止のため) 自分、相手の情報の引き出しにのみ変数使用可能。 自分情報は「変数[i]」、相手情報は「変数[-i]」に代入されてありこれは1p2pどちらに書いても変わらない。 使用可能変数(取出のみ) x軸位置…x[i] x[-i] y軸位置…y[i] y[-i] 砲角度…r[i] r[-i] 残り体力…H[i] H[-i] 経過時間…t 使用可能サブルーチン x軸増減…inx、dex y軸増減…iny、dey 砲角度増減…inr、der 砲発射…fire 基本は自分情報と相手情報でifかけてルーチン呼出になるかな。作るのはかなり難しい
18 :非通知さん@アプリ起動中 :2005/04/04(月) 08:17:02 ID:zKZ0nQeR QVGA機で作成したが一応非QVGAでも動くようには作ってある。が、処理重いかもしれない。 チープな出来だけど、まぁ結構いじれるのでは? なんかJAVAでロボットプログラムして戦わせる大会があったから思いついて書いてみた。 最後に>>1 乙
19 :非通知さん@アプリ実用系 :2005/04/04(月) 09:22:10 ID:3D5zLBLM rem 累計電卓デモ label setu a[1] = 50 a[2] = 100 a[3] = 200 a[4] = 300 a[5] = 400 a[6] = 500 a[7] = 1000 a[8] = 2000 a[9] = 3000 a[10] = 5000 xx = 100 xy = 100 gosub "cl"
20 :19@アプリ実用系 :2005/04/04(月) 09:25:10 ID:3D5zLBLM ↑続き label main im = input() if im = 2 then mo[1] = 1 endif if im = 4 then mo[2] = 1 endif if im = 8 then mo[3] = 1 endif if im = 16 then mo[4] = 1 endif if im = 32 then mo[5] = 1 endif if im = 64 then mo[6] = 1 endif if im = 128 then mo[7] = 1 endif if im = 256 then mo[8] = 1 endif if im = 512 then mo[9] = 1 endif if im = 1 then mo[10] = 1 endif if im = 1024 then gosub "cl" endif if im = 65536 then gosub "kei" endif if im = 2048 then exit endif clearinput() im = 0 goto "main"
21 :19@アプリ実用系 :2005/04/04(月) 09:27:57 ID:3D5zLBLM ↑続き label cl for x = 1 to 10 mo[x] = 0 next return label kei for x = 1 to 10 if mo[x] = 1 then kk = kk + a[x] endif next text("計算結果",xx,xy-16) text(kk,xx,xy) for x = 1 to 500 next kk = 0 clear(xx,xy-34,48,36) return ※連投、失礼しました。前スレからロムってまつw
22 :19@アプリ実用系 :2005/04/04(月) 09:38:29 ID:3D5zLBLM 一番重要なことを…orz }1 乙です プログラム}数字キー:フラグOn。F:合計を求める。*:フラグクリア。#:終了 ・・・だと思った(ぉ
23 :0.02 :2005/04/04(月) 10:56:06 ID:iY/j0tab >>6 (826) strlenの使い方が全然解らなかったんで かなりありがたいッス。激thx ちなみに俺もローグライク動かなかったんだけど 少し待ったら映りましたorz かなりイイ出来ですね。ちとプログラム複雑そうなんで手伝えないけど(´・ω・`) ローグライク楽しみ。 >>14 AIリアルタイム対戦キタ━━━(゚∀゚)━━━!!! ジレンマと株の人?とりあえず乙です 今から動かしてみます >>19 計算機?とは違うのかな…とりあえず動かしてみる >>1 >>まとめサイトの人 乙です
24 :非通知さん@アプリ起動中 :2005/04/04(月) 11:11:52 ID:cmMHXKbm 前スレがまだ100レスもいってない(半分DAT落ちしてた)頃からずっといたけど、まさかこんなに栄えると思わなかったよ。 Tabris氏を始めBASICアプリを作ってくれた人達に感謝せねば。
25 :0.02 :2005/04/04(月) 11:16:52 ID:iY/j0tab label d soft2("QUIT")PT=0 PX[1]=4PX[2]=34PX[3]=64PX[4]=4PX[5]=34PX[6]=64PX[7]=4PX[8]=34PX[9]=64 PY[1]=4PY[2]=4PY[3]=4PY[4]=34PY[5]=34PY[6]=34PY[7]=64PY[8]=64PY[9]=64 frect(0,0,width,height)color(250,250,250)origin(2,2)rect(0,0,93,93)for x=3to 63step 30fory=3to 63step 30rect(x,y,27,27)next next for C=1to 9n=abs(rand)%2MAP[C]=n next gosub"j" label k i=input()if i and key1 then C=1gosub"c"C=2gosub"c"C=4gosub"c" elseif i and key2 then C=2gosub"c"C=1gosub"c"C=3gosub"c"C=5gosub"c" elseif i and key3 then C=3gosub"c"C=2gosub"c"C=6gosub"c" elseif i and key4 then C=4gosub"c"C=1gosub"c"C=5gosub"c"C=7gosub"c" elseif i and key5 then C=5gosub"c"C=2gosub"c"C=4gosub"c"C=6gosub"c"C=8gosub"c" elseif i and key6 then C=6gosub"c"C=3gosub"c"C=5gosub"c"C=9gosub"c" elseif i and key7 then C=7gosub"c"C=4gosub"c"C=8gosub"c" elseif i and key8 then C=8gosub"c"C=5gosub"c"C=7gosub"c"C=9gosub"c" elseif i and keysoft2 then exit endif C=0 label j lock()for C=1to 9if MAP[C]=1then color(100,250,150)frect(PX[C],PY[C],23,23)PT=PT+1 elseif MAP[C]=0then color(0,0,0)frect(PX[C],PY[C],23,23)endif next unlock(1) if PT=9then color(250,250,0)text("CLEAR!",31,115)clearinput()input()exit else PT=0endif goto"k" label c if MAP[C]=0then MAP[C]=1elseif MAP[C]=1then MAP[C]=0endif return
26 :0.02 :2005/04/04(月) 11:21:26 ID:iY/j0tab 「ライトアウツ」 数字キー1〜9で操作。 ソフトキー2で終了。 昔懐かしい(?)ライツアウトゲームです。 押した所とそれの上下左右に隣接するマスの色が反転します。 全てを緑ライトにすればクリア。 暇潰しにはいいと思います。問題は自動生成なので何回もやってみてください。
27 :19@アプリ実用系 :2005/04/04(月) 12:28:26 ID:3D5zLBLM }23 どちらかというと、レジスタ?に近いかと(仕様で…orzzz) 一応、使い方のチウトリアルw; 1 → F = 計算結果50 2 → F = 計算結果150(50+100) 6 → F = 計算結果650(150+500) * = クリアした。 F = 計算結果0(初期値) 2 → 6 → 8 → F = 計算結果2600(100+500+2000) 9 → 4 → F = 計算結果5900(2600+3000+300) F = 計算結果5900(変更なし) # = プログラム終了。選択に戻る ・数値入力インターフェースはできてるから、組み込むだけだな。 セーブが、変数1個というのは痛いがw; http://ruikei-p.seesaa.net/
28 :10 :2005/04/04(月) 12:32:38 ID:LcsS7voc for next 抜かしてもダメでした。誰か助けてくださいm(__)m
29 :13 :2005/04/04(月) 13:15:15 ID:INY8+xTq >10 label b text("アタリ",0,126) input() exit label bb if t=1 then goto"b" endif input() これでいけるはず。 >0.0.2氏 13=ジレンマの中の人。 だからロボットすっごいおもしろそう
30 :19@アプリ実用系 :2005/04/04(月) 13:27:05 ID:3D5zLBLM label a im = input(60) if im = keyselect then goto"bb" endif sleep(65) ・・・・・ text(A,0,126) goto "a" label b ・・・・・ text("アタリ",0,126) text(x,0,146) input() exit ・・・・・ if t=1 then goto"b" endif x = x + 1 goto "a"
31 :19@アプリ実用系 :2005/04/04(月) 13:29:16 ID:3D5zLBLM あうっ…被った。スマソ; }29 決定キーを打った回数を追加してみました(最初は24だったorzz
32 :13 :2005/04/04(月) 15:41:19 ID:INY8+xTq 'TEST soft2("END") LT=4 LTM=5 CHARx=LTM+abs(rand)%50+1 CHARy=LTM+abs(rand)%50+1 'マップ作成 SHARPS="" for i=1 to 50+LTM*2 SHARPS=SHARPS+"#" next for i=0 to LTM+50 step LTM+50 for j=1 to LTM MAP[j+i]=SHARPS next next SHARPS=substr(SHARPS,0,LTM) for i=1+LTM to 50+LTM MAP[i]=SHARPS for j=1 to 50 R=abs(rand)%100 if R<=80 then MAP[i]=MAP[i]+" " else MAP[i]=MAP[i]+"*" endif next MAP[i]=MAP[i]+SHARPS next MAP[CHARy]=substr(MAP[CHARy],0,CHARx-1)+" "+substr(MAP[CHARy],CHARx,strlen(MAP[CHARy])-CHARx) MAPS[1]="<"'洞窟 MAPS[2]="Ψ"'道具屋 MAPS[3]="Ж"'宿屋 for i=1 to 3 RX=abs(rand)%49+6 RY=abs(rand)%49+6 MAP[RY] = substr(MAP[RY],0,RX-1) + MAPS[i] + substr(MAP[RY],RX,strlen(MAP[RY])-RX) next '枠書き込み rect(4,4,132,133) #TEST_2#
33 :13 :2005/04/04(月) 15:41:59 ID:INY8+xTq 'TEST_2 'メイン label 0 MCHx=CHARx MCHy=CHARy yield() lock() color(50*LT,50*LT,50*LT) frect(5,5,131,132) color(250-50*LT,250-50*LT,250-50*LT) for i=-LT to LT text(substr(MAP[CHARy+i],CHARx-1-LT,1+LT*2),64-12*LT,79+12*i) next text("@",64,79) unlock(1) key=input() if key=keysoft2 then end elseif key=keyleft then CHARx=CHARx-1 elseif key=keyright then CHARx=CHARx+1 elseif key=keyup then CHARy=CHARy-1 elseif key=keydown then CHARy=CHARy+1 endif #TEST_3# #TEST_5# goto 0
34 :13 :2005/04/04(月) 15:42:34 ID:INY8+xTq 'TEST_3 '移動先チェック if strat(MAP[CHARy],CHARx-1)="*" or strat(MAP[CHARy],CHARx-1)="#" then CHARx=MCHx CHARy=MCHy elseif strat(MAP[CHARy],CHARx-1)="M" then if abs(rand)%10<7 then MAP[CHARy]=substr(MAP[CHARy],0,CHARx-1) + " " + substr(MAP[CHARy],CHARx,strlen(MAP[CHARy])-CHARx) endif CHARx=MCHx CHARy=MCHy else CNT=CNT+1 endif if CNT%200=199 then TIME=TIME+1 LT=5-TIME%6 endif
35 :13 :2005/04/04(月) 15:43:36 ID:INY8+xTq 'TEST_4 '攻撃チェック if abs(rand)%10>3 thenMAP[CHARx]=substr(MAP[CHARy],0,CHARx-1) + " " + substr(MAP[CHARy],CHARx,strlen(MAP[CHARy])-MAP[CHARy]) endif 'TEST_5 'モンスター誕生 label BONE if abs(rand)%2=0 and MCNT<10 then Mx=LTM+abs(rand)%50+1 My=LTM+abs(rand)%50+1 if substr(MAP[My],Mx,1)=" "then MAP[My] = substr(MAP[My],0,Mx)+ "M" + substr(MAP[My],Mx,strlen(MAP[My])-Mx) MCNT=(MCNT+1)%10 M[MCNT][1]=NAME M[MCNT][2]=Mx M[MCNT][3]=My M[MCNT][4]=10'HP M[MCNT][5]=1'攻撃力 M[MCNT][6]=1'命中率 M[MCNT][7]=1'防御力 M[MCNT][8]=1'回避率 else goto "BONE" endif endif
36 :13 :2005/04/04(月) 15:51:58 ID:INY8+xTq >826氏 モンスター誕生 2分の1かつMCNTが10より少なく、かつsubstr(MAP[rand_Y],rand_X,1)が" "ならsubstr(MAP[Y],X,1)はモンスター"M"で、M[MCNT][i]にそれぞれ能力値がはいる 発生条件はあとで変えるとして、これであってるかな?
37 :0.02 :2005/04/04(月) 16:13:13 ID:G8nUnLNi >>29 (13氏) ほうほう、そうでしたか なかなかローグライクの形が定まって来ましたね ロボシス研究中です >>14 ロボシスなかなかイイ… でも砲頭しか表示されない事が多い; サイン・コサイン・タンジェントがいまいち理解できてないので これも講義お願いしたい所デスorz 相手の周囲をぐるぐる回るプログラム作りたい
38 :14 :2005/04/04(月) 17:36:14 ID:zKZ0nQeR >>37 実は砲頭しか表示していない罠(´・ω・`) なかなか重いからなるたけ簡略化したらああなった。こだわりたいけど重くなる… 角度→tanだけでtan→角度が出来ないから相手の方向に砲を向けるのに苦労…
39 :826 :2005/04/04(月) 19:06:15 ID:px99hjIq >>36 ごめん、ロボシス研究してた・・・ これから見てみる(ちょっと時間かかるかも ロボシスのプログラム 「自動砲台」 if fg=1 then P=3 mx=(x[-i]-kx)*7+x[-i] my=(y[-i]-ky)*7+y[-i] a=mx-x[i] b=my-y[i] if r[i]>314 or r[i]<45 then c=tan(r[i])*a/100 if a> 0 and c>b-P and c<b+P then gosub "fire" endif if c<b then gosub "inr" elseif c>b then gosub "der" endif elseif r[i]>134 and r[i]<225 then c=tan(r[i])*a/100 if a<0 and c>b-P and c<b+P then gosub "fire" endif if c<b then gosub "der" elseif c>b then gosub "inr" endif elseif r[i]>44 and r[i]<135 then c=tan(r[i]+90)*(-b)/100 if b> 0 and c>a-P and c<a+P then gosub "fire" endif if c>a then gosub "inr" elseif c<a then gosub "der" endif elseif r[i]>224 and r[i]<315 then c=tan(r[i]+90)*(-b)/100 if b<0 and c>a-P and c<a+P then gosub "fire" endif if c>a then gosub "der" elseif c<a then gosub "inr" endif endif else fg=1 endif kx=x[-i] ky=y[-i] 頑張ってタンジェント使ってみたけど・・・頭痛くなったorz
40 :19@アプリ実用系 :2005/04/04(月) 19:28:48 ID:3D5zLBLM rem ダイスころころ soft1("F:終了") soft2("四方:Dice") xy = 10 xx = 00 zb = 20 dice = 6 if dice > 50 then dice = 49 endif co = 1 setfont("S") label di rr = abs(rand)%dice+1 rs = abs(rand)%dice+1 rt = rr + rs ru = rr * 2 rv = rr * 3 tot = tot + rt gosub "ms"
41 :19@アプリ実用系 :2005/04/04(月) 19:31:36 ID:3D5zLBLM ↑続き text(ms,xx,xy) text("A:",xx,xy+zb) text(rr,xx+15,xy+zb) text("B:",xx,xy+(zb*2)) text(rs,xx+15,xy+(zb*2)) text("合計",xx,xy+(zb*3)) text(rt,xx+25,xy+(zb*3)) text("(",xx,xy+(zb*4)) text(ru,xx+10,xy+(zb*4)) text(rv,xx+25,xy+(zb*4)) text(tot/co,xx+40,xy+(zb*4)) text(")",xx+64,xy+(zb*4)) im = input() gosub "dis" if co > 299 then exit endif clearinput() clear(0,0,100,120) co = co + 1 goto "di"
42 :19@アプリ実用系 :2005/04/04(月) 19:32:24 ID:3D5zLBLM ↑続き label ms ms="ダイス" if rt = dice*2 then ms="破壊力抜群" endif if rt = 2 then ms="経験点10点" endif return label dis if im = 65536 then exit endif if im = 4 then dice = 4 endif if im = 16 then dice = 8 endif if im = 32 then dice = 6 endif if im = 64 then dice = 10 endif if im = 256 then dice = 20 endif return ※ 6面体のはずが、長くなっちまった;
43 :19@アプリ実用系 :2005/04/04(月) 19:33:57 ID:3D5zLBLM }soft2("四方:Dice") soft2("2468:Dice") 申し訳ないm(_ _;)m
44 :14 :2005/04/04(月) 20:21:26 ID:zKZ0nQeR >>824 氏 うわ…すごい。これほどに作ってくれるとは嬉しいなぁ… まともな講義出来なくてスマソ。俺もよく分かってないんだ(´・ω・`) ところで1VS1のモノを作るとき、今回使ったのが for i=-1 to 1 step 2 で変数を[i][-i]で制御ってなかなか便利だったので報告。
45 :19@アプリ実用系 :2005/04/04(月) 20:56:46 ID:3D5zLBLM }44 xorじゃダメなんですかね?(って、良く知らないけど;) ついでだから、ある2進数をビット反転させる技があったら教えて下さいorz つーか、数値型とか無いから、2進数化させた文字列でもいいけど・・・
46 :14 RBSYS :2005/04/04(月) 22:49:12 ID:zKZ0nQeR >>45 xorでも可能だとは思うけどこっちの方が圧倒的に記述が短いし視認性がいい気がする。 ただこの場合最大1対だから複数使いたい時は不便だな。 ブーリアン型変数がありゃビットまがいのこともできるけど現状はifしかないかも。 別ソースで汎用性をもたせて作っておいて使い回すのが一番楽…かな ちょいと考えてこよ
47 :826 :2005/04/04(月) 23:11:02 ID:px99hjIq >>13 氏 何かが違う気がしたので改造しました。 (何が違うかは解らないんですが・・・ こうゆう解釈でよかったんだろうか・・・ 因にテスト用なんでモンスターはマップ左上に集中して発生するようにしてます。 その他はTIME更新時処理の位置を変えときました
48 :826 :2005/04/04(月) 23:11:45 ID:px99hjIq 'TEST soft2("END") LT=4 LTM=5 CHARx=LTM+abs(rand)%50+1 CHARy=LTM+abs(rand)%50+1 MCHx=CHARx MCHy=CHARy 'マップ作成 SHARPS="" for i=1 to 50+LTM*2 SHARPS=SHARPS+"#" next for i=0 to LTM+50 step LTM+50 for j=1 to LTM MAP[j+i]=SHARPS next next SHARPS=substr(SHARPS,0,LTM) for i=1+LTM to 50+LTM MAP[i]=SHARPS for j=1 to 50 R=abs(rand)%100 if R<=80 then MAP[i]=MAP[i]+" " else MAP[i]=MAP[i]+"*" endif next MAP[i]=MAP[i]+SHARPS next MAP[CHARy]=substr(MAP[CHARy],0,CHARx-1)+" "+substr(MAP[CHARy],CHARx,strlen(MAP[CHARy])-CHARx) MAPS[1]="<"'洞窟 MAPS[2]="Ψ"'道具屋 MAPS[3]="Ж"'宿屋 for i=1 to 3 RX=abs(rand)%50+6 RY=abs(rand)%50+6 MAP[RY] = substr(MAP[RY],0,RX-1) + MAPS[i] + substr(MAP[RY],RX,strlen(MAP[RY])-RX) next 'モンスター作成 for MN=1 to 10 gosub "BONE" next '枠書き込み rect(4,4,132,133) #TEST_2#
49 :14 RBSYS :2005/04/04(月) 23:12:26 ID:zKZ0nQeR 連稿スマソorz >>45 つまり変数の中身を 0→1 1→0 にしたいのかな?そうだったら、これでどうよ。 a=(a+1)%2 ただ、aは二進数、0か1しか入らないようにプログラムする必要があるけど。
50 :826 :2005/04/04(月) 23:12:44 ID:px99hjIq 'TEST_2 'メイン label 0 MCHx=CHARx MCHy=CHARy yield() lock() color(50*LT,50*LT,50*LT) frect(5,5,131,132) color(250-50*LT,250-50*LT,250-50*LT) for i=-LT to LT text(substr(MAP[CHARy+i],CHARx-1-LT,1+LT*2),64-12*LT,79+12*i) next text("@",64,79) unlock(1) key=input() if key=keysoft2 then end elseif key=keyleft then CHARx=CHARx-1 elseif key=keyright then CHARx=CHARx+1 elseif key=keyup then CHARy=CHARy-1 elseif key=keydown then CHARy=CHARy+1 endif #TEST_3# goto 0 #TEST_A#
51 :826 :2005/04/04(月) 23:16:59 ID:px99hjIq 'TEST_3 '移動先チェック if strat(MAP[CHARy],CHARx-1)="*" or strat(MAP[CHARy],CHARx-1)="#" then CHARx=MCHx CHARy=MCHy elseif strat(MAP[CHARy],CHARx-1)="M" then if abs(rand)%10<7 then MAP[CHARy]=substr(MAP[CHARy],0,CHARx-1) + " " + substr(MAP[CHARy],CHARx,strlen(MAP[CHARy])-CHARx) gosub "GEKIHA" endif CHARx=MCHx CHARy=MCHy else CNT=CNT+1 if CNT%200=199 then TIME=TIME+1 LT=5-TIME%6 endif endif
52 :826 :2005/04/04(月) 23:17:52 ID:px99hjIq 'TEST_A '撃破処理サブ label GEKIHA MN=MIDX[CHARx][CHARy] dispose(MIDX[CHARx][CHARy]) gosub "BONE" return 'モンスター発生サブ label BONE for i=0 to 0 Mx=LTM+abs(rand)%6+1 My=LTM+abs(rand)%6+1 if substr(MAP[My],Mx-1,1)=" " and (MCHx<>Mx or MCHy<>My) then MAP[My] = substr(MAP[My],0,Mx-1)+ "M" + substr(MAP[My],Mx,strlen(MAP[My])-Mx) MIDX[Mx][My]=MN M[MN][1]=NAME M[MN][2]=Mx M[MN][3]=My M[MN][4]=10'HP M[MN][5]=1'攻撃力 M[MN][6]=1'命中率 M[MN][7]=1'防御力 M[MN][8]=1'回避率 else i=i-1 endif next return
53 :非通知さん@アプリ起動中 :2005/04/04(月) 23:48:08 ID:Oh6G1zSP >>49 a=1-a
54 :非通知さん@アプリ起動中 :2005/04/05(火) 00:24:09 ID:1/QXlT4L プログラム中にアルファベットで名前を変更するようにしたいんですが… 配列で、一文字一文字やっていくしかないのでしょうか?
55 :非通知さん@アプリ起動中 :2005/04/05(火) 00:38:05 ID:MGyiHI/d >>45 ビット反転するなら、すべて1で埋めた数とxorすればいい。 あるいは、その数から引き算でもいいけど。 ようは、 11111111(2) = 255 xor 00101011(2) = 43 ---------------- 11010100(2) = 212 ということで、ビット反転が成立する、と。 数値に関しては恐らく java.lang.Integer.parseInt(String) あたりで処理されていると思うので、 普通に10進数の文字列だけで考えるのが無難。 2進文字列からだと……ルーチン自作になるかも(^^;
56 :非通知さん@アプリ起動中 :2005/04/05(火) 01:28:28 ID:UuCONOaK >826氏 ありがとう(T-T)解釈というより俺の書き方が根本的にめちゃくちゃだから。すごい感謝 826氏に一つお願いしてもよいかな。Mの動きをlabel A 今の位置を記憶 for 0からMN abs(rand)%4 if 0 なら上 elseif 1なら下 elseif 2なら右 elseif 3なら左 else 消える next 行き先が" "じゃないならgoto A " "なら元の位置=" " 俺はアイテムとステータスと画面をちとやろうかなと。 お願いしてもよいかな?
57 :19@アプリ実用系 :2005/04/05(火) 07:40:50 ID:jkO0G2G0 }49(14 RBSYS) }・・・a=(a+1)%2 φ(゜□゜)メモメモ。早速試してみますw }53 }a=1-a 懐かし〜。これだ…MSXマガジンか何かに載ってたワザはw }55 }… } 11111111(2) = 255 }xor 00101011(2) = 43 } ---------------- } 11010100(2) = 212 全て1のマスクで処理…と(ふむふむ)。分かりやすいです〜w みなさま、ありがとうございましたm(_ _;)m
58 :非通知さん@アプリ起動中 :2005/04/05(火) 08:23:49 ID:mWcW5Gwf >>アプリ実用サン 累計デモ計算結果が一瞬しか表示されないから label kei の clear(xx,xy-34,48,36)を頭に移動させるといいかな もしくは clearの前にsleep(2000)とか。 key変数を1→key0 2→key1 とかにしないと動かなかったのも報告 改良していけばキーをフルに使った便利ツールができそう。 ところでキー変数って ↑:? ←:? →:? ↓:? 決定:65536 1:2 2:4 3:8 4:16 5:32 6:64 7:128 8:256 9:512 *:1024 0:1 #:2048 ってことなのかな? この文法がDoCoMoでも通用するように改良して欲しいな… あと現状のclear(0,0,width,height)をcls()でできるように…
59 :19@アプリ実用系 :2005/04/05(火) 09:40:26 ID:jkO0G2G0 }58 レスありがとうございます。あああ、すみまソン #一番、重要だったかも?ORZZZ… 上:8192、左:4096、下:16384、右:32768かと(多分) 自機は、ボーダのV603SHです(QVGA) 仕事前なので、激しく急いで打ってる・・・(ぉ 累計デモは、アフター5にscanへ変更する必要があるn(
60 :非通知さん@アプリ起動中 :2005/04/05(火) 17:06:08 ID:RRlorKZR 保管庫の更新まだかな…
61 :826(ちょっと連投しますよ) :2005/04/05(火) 21:21:36 ID:W3dsm34/ '「TEST」 soft2("END") LT=4 LTM=5 CHARx=LTM+abs(rand)%50+1 CHARy=LTM+abs(rand)%50+1 MCHx=CHARx MCHy=CHARy 'マップ作成 SHARPS="" for i=1 to 50+LTM*2 SHARPS=SHARPS+"#" next for i=0 to LTM+50 step LTM+50 for j=1 to LTM MAP[j+i]=SHARPS next next SHARPS=substr(SHARPS,0,LTM) for i=1+LTM to 50+LTM MAP[i]=SHARPS for j=1 to 50 R=abs(rand)%100 if R<=80 then MAP[i]=MAP[i]+" " else MAP[i]=MAP[i]+"*" endif next MAP[i]=MAP[i]+SHARPS next 'ショップ等書き込み MAPS[1]="<"'洞窟 MAPS[2]="Ψ"'道具屋 MAPS[3]="Ж"'宿屋 for i=1 to 3 RX=abs(rand)%50+6 RY=abs(rand)%50+6 x=RX y=RY a=MAPS[i] gosub "KAE" next '主人公書き込み x=CHARx y=CHARy a="@" gosub "KAE" 'モンスター作成 for MN=1 to 10 gosub "BONE" next '枠書き込み rect(3,3,133,133) #TEST_2#
62 :826 :2005/04/05(火) 21:22:22 ID:W3dsm34/ '「TEST_2」 'メイン label 0 gosub "HYOJI" color(0,0,255) clear(8,138,5,5) frect(3,138,5,5) MCHx=CHARx MCHy=CHARy 'キー入力処理 label key key=scan if key=keysoft2 then end elseif key=keyleft then CHARx=CHARx-1 elseif key=keyright then CHARx=CHARx+1 elseif key=keyup then CHARy=CHARy-1 elseif key=keydown then CHARy=CHARy+1 else goto "key" endif '移動先チェック if strat(MAP[CHARy],CHARx-1)="*" or strat(MAP[CHARy],CHARx-1)="#" then CHARx=MCHx CHARy=MCHy elseif strat(MAP[CHARy],CHARx-1)="M" then if abs(rand)%10<7 then x=CHARx y=CHARy a=" " gosub "KAE" MN=MIDX[CHARx][CHARy] dispose(MIDX[CHARx][CHARy]) gosub "BONE" endif CHARx=MCHx CHARy=MCHy else x=MCHx y=MCHy a=" " gosub "KAE" x=CHARx y=CHARy a="@" gosub "KAE" endif gosub "HYOJI" CNT=CNT+1 if CNT%200=199 then TIME=TIME+1 LT=5-TIME%6 endif #TEST_3#'モンスター行動 goto 0 #TEST_4#'サブ
63 :826 :2005/04/05(火) 21:23:02 ID:W3dsm34/ '「TEST_3」 'モンスター行動 color(255,0,100) clear(3,138,5,5) frect(8,138,5,5) MN=1 label MMOVE if M[MN][2]<CHARx-LT or M[MN][2]>CHARx+LT or M[MN][3]<CHARy-LT or M[MN][3]>CHARy+LT then goto "MMOVE3" endif label MMOVE1 Mx=M[MN][2] My=M[MN][3] j=abs(rand)%5 if j=0 then My=My-1 elseif j=1 then My=My+1 elseif j=2 then Mx=Mx+1 elseif j=3 then Mx=Mx-1 else x=M[MN][2] y=M[MN][3] a=" " gosub "KAE" gosub "HYOJI" dispose(MIDX[M[MN][2]][M[MN][3]]) gosub "BONE" goto "MMOVE2" endif if strat(MAP[My],Mx-1)=" " then x=M[MN][2] y=M[MN][3] a=" " gosub "KAE" x=Mx y=My a="M" gosub "KAE" dispose(MIDX[M[MN][2]][M[MN][3]]) MIDX[Mx][My]=MN M[MN][2]=Mx M[MN][3]=My else goto "MMOVE1" endif label MMOVE2 gosub "HYOJI" label MMOVE3 if MN<10 then MN=MN+1 goto "MMOVE" endif
64 :826 :2005/04/05(火) 21:24:19 ID:W3dsm34/ '「TEST_4」 'マップ書き換えサブ label KAE MAP[y] = substr(MAP[y],0,x-1)+ a + substr(MAP[y],x,strlen(MAP[y])-x) return 'マップ表示サブ label HYOJI yield() lock() color(50*LT,50*LT,50*LT) frect(4,4,132,132) color(250-50*LT,250-50*LT,250-50*LT) for i=-LT to LT text(substr(MAP[CHARy+i],CHARx-1-LT,1+LT*2),65-12*LT,78+12*i) next unlock(1) return 'モンスター発生サブ label BONE for i=0 to 0 Mx=LTM+abs(rand)%10+1 My=LTM+abs(rand)%10+1 if strat(MAP[My],Mx-1)=" " then x=Mx y=My a="M" gosub "KAE" MIDX[Mx][My]=MN M[MN][1]=NAME M[MN][2]=Mx M[MN][3]=My M[MN][4]=10'HP M[MN][5]=1'攻撃力 M[MN][6]=1'命中率 M[MN][7]=1'防御力 M[MN][8]=1'回避率 else i=i-1 endif next return
65 :826 :2005/04/05(火) 21:26:01 ID:W3dsm34/ >>56 こんなの出来ますた。 結構重くなってしまったので、画面外のモンスターは移動処理を省くようにしたんですが、 まだちょっと重いかもしれない・・・ 細かい所では自分のターンか敵のターンかが分かりやすいようにしてみたり、 KEY入力を連続押し対応に、 あと、表示とマップ書き換えをサブルーチン化してみました
66 :13 :2005/04/05(火) 22:24:51 ID:UuCONOaK >65 仕事ハヤス。もしかして本職のPGさん? ありがとう。たしかに10匹同時に動かすと遅くなるだろうけど実際はランダムな場所とタイミングで出現するから大丈夫だと思うけど。Mの動きは最終的には@に向かって、CHARxとCHARyどちらが近いか判断して近い方に動く CHARx=3 CHARy=2 Mx=5 My=1 ''''M ''@'' ''''' なら X軸差=2:Y軸差=1なのでMy-1。移動先が*ならMx-1。また移動先が*なら今度はMy+1・・みたいに主人公をつけまわそうかなと。問題はMM''@のときMNが右から1,2だと M'M'@ になっちゃうんだよね。本家はどう処理してるんだろう 俺は今んとこ簡単にrect text ですっげー簡単にTEST版作ってるとこだけど、見える部分は時刻とHPだけにしようかなと。武器は ITME[1][1]=名前 ITME[1][2]=攻撃力 ITME[1][3]=命中 にしようかなと考えてる。 とにかくダメージ判定を決めちゃえばほぼ一段落だね。826氏ありがとう。俺ほとんどなにもしてないやorz ダメージ判定先に決めちゃって一段落しちゃおうかな
67 :13 :2005/04/06(水) 00:26:58 ID:JXR0Jel3 攻撃側=ATK[1]'総合攻撃力 攻撃側=ATK[2]'総合命中率 守備側=DEF[1]'総合防御力 攻撃側=ATK[2]'総合回避率 '攻撃判定 R=abs(rand)%10+1 if (攻撃側総合命中率)-(守備側総合回避)>R then (守備側HP)-(攻撃側総合攻撃力+R)-(守備側総合守備力) text((攻撃側)+"は殴りかかった") input()clear(M.WINDO)clear(STAT.WINDO) text(HP) if (守備側HP)<1 then text((守備側)+"は死んだ") if (守備側)=@ then text("GAME OVER") input()end else (Mx,My)=" " endif
68 :13 :2005/04/06(水) 00:28:23 ID:JXR0Jel3 ICNT=1 ITME[ICNT][1]="ショートソード" ITME[ICNT][2]=1'攻撃力 ITME[ICNT][3]=1'命中率 ITME[ICNT][4]=0'攻撃修正 ITME[ICNT][5]=0'命中修正 soft2("END") label 0 R=150 lock() color(0,0,0)frect(0,0,240,240) color(0,0,0)rect(4,4,132,133) color(R,R,R)frect(5,5,130,131) color(250,250,250)text("TIME",150,20)text(" HP ",150,35) A=scan if A=keysoft2 then exit elseif A=keypound then'# color(250,250,250) text("LV"+"/"+STR,4,160) text("STR"+"/"+STR,4,175) text("満腹",4,190)'腹具合が<80なら"満腹",<40なら普通,<20なら空腹,<0なら危険 elseif A=keyast then'アスタリスク color(0,0,0)frect(0,0,240,240) color(250,250,250) for i=0 to ICNT text(ICNT+"."+ITME[ICNT][1]+"("+ITME[ICNT][2]+","+ITME[ICNT][3]+")("+ITME[ICNT][4]+","+ITME[ICNT][5]+")",4,19) next endif unlock(1)input()goto 0
69 :13 :2005/04/06(水) 00:31:52 ID:JXR0Jel3 攻撃判定は変更の可能性大だけど、全体的な雰囲気は2つ目みたいな感じかなぁ。 取りあえず明日
70 :0.02 :2005/04/06(水) 08:41:32 ID:TMHp/tZE >>66 (13氏) MM□□@ の処理の件 本家じゃないけど、シレンはたぶんそんな感じ。 少なくともアプリ版やSFC版では列を崩してナナメに動いたりしてた。
71 :13 :2005/04/06(水) 21:08:25 ID:JXR0Jel3 >70 そうだっけ?まぁ近い順から動くか気にしないか、どうにでもなるかな
72 :826 :2005/04/06(水) 22:58:19 ID:9FR90B4f 13氏 >>67 を参考にシステム作ってみた・・・ 他の所も拡張に耐えうるように改良したらファイルが8つになってしまいますたorz 興味ある方いれば(まだまだ試作品ですが)UPしますけど・・・どうしよう
73 :13 :2005/04/06(水) 23:27:58 ID:JXR0Jel3 >72 是非 つーか826氏すごすぎ。本当は俺が組まなくちゃいけないんだろうけどorz ソース眺めて解析とアルゴリズム考えてばっかで指より頭しか使ってないす。申し訳ないorz orz orz
74 :13 :2005/04/07(木) 02:02:14 ID:msMWyOlN '武器 ITME[I][0]=I_No ITME[I][1]=NAME ITME[I][2]=攻撃 ITME[I][3]=命中 '防具 ITME[I][0]=ITME_No ITME[I][1]=NAME ITME[I][2]=防御力 ITME[I][3]=回避 '道具 ITME[I][0]=ITME_No ITME[I][1]=NAME 'I_No=0は武器 'I_No=1は防具 'I_No=2は道具 落ちているのは"&"'箱に統一。箱を開けるとランダムにアイテムが手に入る
75 :13 :2005/04/07(木) 02:05:00 ID:msMWyOlN if CHARx,CHARy="&"then R=rand%3 for i=0 to 5 CHAR_ITME[I_CNT][i]=ITME[R][i] next'アイテムをCHAR_ITMEにいれる if ITME[R][0]=0 or 1 then'武器or防具なら for i=4 to 5 if rand%100>90 then for i=4 to 5 CHAR_ITME[I_CNT][i]=ITME[R][i] ITME[R][i]=rand%3 next 'ITME[1][4]=攻撃(防御)修正 'ITME[1][5]=命中(回避)修正 てやるとアイテムの書き方は ITME[1][0]=0'武器 ITME[1][1]="ショートソード" ITME[1][2]=1'攻撃力1 ITME[1][3]=1'防御力1 て書けて後々簡単かな
76 :13 :2005/04/07(木) 02:06:56 ID:msMWyOlN soft2("END")label 0 lock()color(0,0,0)frect(0,0,240,240)color(0,0,0)rect(4,4,132,133)color(250,250,250)frect(5,5,130,131)color(0,0,0)text("&@",60,60) color(250,250,250)text("TIME",150,20)text(" HP ",150,35)A=scan if A=keysoft2 then exit elseif A=keypound then color(250,250,250)text("LV"+"/"+STR,4,160)text("STR"+"/"+STR,4,175)text("満腹",4,190)elseif A=keyast then color(0,0,0)frect(0,0,240,240)color(250,250,250) for i=1 to ICNT if CITME[i][0]=2 then text(i+"."+CITME[i][1],4,19+15*i) else text(i+"."+CITME[i][1]+"("+CITME[i][2]+","+CITME[i][3]+")("+CITME[i][4]+","+CITME[i][5]+")",4,19+15*i) endif next elseif A=keyleft then #ITME# ICNT=ICNT+1 R=abs(rand)%6+1 for i=0 to 5 CITME[ICNT][i]=ITME[R][i] next'アイテムをCHAR_ITMEにいれる if ITME[R][0]=2 then text(ITME[R][1]+"を拾った",4,175) else text(ITME[R][1]+"("+ITME[R][2]+","+ITME[R][3]+")("+ITME[R][4]+","+ITME[R][5]+")を拾った",4,175)endif endif unlock(1)input()goto 0
77 :13 :2005/04/07(木) 02:10:42 ID:msMWyOlN 'ITME ITME[1][0]=0 ITME[1][1]="ナイフ" ITME[1][2]=1 ITME[1][3]=0 ITME[2][0]=0 ITME[2][1]="ショートソード" ITME[2][2]=2 ITME[2][3]=1 ITME[3][0]=0 ITME[3][1]="ロングソード" ITME[3][2]=4 ITME[3][3]=3 ITME[4][0]=1 ITME[4][1]="プレートアーマー"ITME[4][2]=3 ITME[4][3]=4 ITME[5][0]=1 ITME[5][1]="フルプレートアーマー" ITME[5][2]=5 ITME[5][3]=8 ITME[6][0]=2 ITME[6][1]="食料" ITME[6][2]=80 すげキタネorz GETI=ITME[][]+[][]+・・・て配列で入れればGETI+"を拾った"てできるんだよね?
78 :0.02 :2005/04/07(木) 08:30:37 ID:hGMi4Ldd お二人ともお疲れ様デス エンジン部分はよくわかんないけど アイテム部分って、自分で自由にアイテム作れるって事かな? そういうコンストラクティブな所ってめちゃ好きなんで興味津々 なんか最近、静観組が多そうですがちょいと質問を。 例えばITME[I][0]=とかの、インデックスを2つ付ける奴ですが これって具体的にどういった使い方が有効なのか、 どのようなプログラムを書かないといけないのか講義お願いします。
79 :13 :2005/04/07(木) 08:57:28 ID:msMWyOlN アイテムとモンスターは自由にいじれるというよりはいじりやすいように作った方がバランスとるときも楽だしね。FF好きなら自分でエクスカリバーつくっちゃおーなんてもできるし 配列[i][j]は例えば今回のアイテムを例えると ITME[1][0]=0'種類 ITME[1][1]="ナイフ"'名前 ITME[1][2]=1'能力1 ITME[1][3]=0'能力2 ITME[4][0]=1 ITME[4][1]="プレートアーマー"ITME[4][2]=3 ITME[4][3]=4 て先に入れちゃうと j=1 for i=0 to 3 text(ITME[j][i],X,Y+i*15) next この5行で 0 ナイフ 1 0 てとりだせるの。j=4にすればプレートアーマーになるんだけど、配列の使い方は826氏すごいうまいよ。 ようは ITME[i]の中の[j]番目のデータってことでよいのかな。 しかしあれだけローグライクみんなで作ろうって言ってた人は何処へ
80 :0.02 :2005/04/07(木) 09:21:35 ID:hGMi4Ldd おお、ありがとん てっきりインデックスは一個しか設定できないモンだと思ってたから勉強になったよ 2重のforを使う時とかに使えるのか… インデックスは変数宣言いらないから尚更使えますな 追加質問。何度もすまん。 例えば「j=1i=0to 3」で、アイテムjの項目(i)が0から2までしかなかった場合、 ITME[1][3]が読み出せずにエラーになるのかな?
81 :>78メル欄 :2005/04/07(木) 09:52:12 ID:msMWyOlN ITMEorz そいえばなんで[i][j]て使い出したんだろ。 >80 0がでるんじゃないかな。無記入は初期値0だから ITEM[i][0]に種類(0,1,2)をいれて ITEM[i][0]=0 or 1は武器防具だからto 5 ITEM[i][0]=2は道具だから名前だけでよいのでto 1 にしたよ でも" "を入れると問題ないかもと思ったけど(,)(,)があるからやっぱりダメかな とりあえずやってみてわからないときは826センセに聞くのが一番鴨
82 :727 :2005/04/07(木) 12:48:21 ID:z8xmKeQM ドットヘルパ作った奴です。 二人(三人?)ともすごいですねぇ。俺も参加したいのは山々なんですが、携帯の電源が突如落ちるバグと、仕様不明なためソース解読やっとりません…。つーか解読無理(笑) 全体像とシステム間の仕様や使用変数(関数)リストなどを作ってもらえれば、参加出来る人が増えるんじゃないでしょうか? 俺は携帯しかないんでちょっと参加はキツそう。ってことで、静かに見守っております。頑張れー
83 :13 :2005/04/07(木) 13:15:13 ID:msMWyOlN 俺も携帯しかないよ。電源落ちるのはちと怖いけど、参加者が多ければ多い程ウレシタノシ。だから727氏0.0.2氏ももしよければ 俺もほとんど理解出来てナイからゆっくり読み解きながらコメントと関数リストと関数の変更してみようかな
84 :NOBA :2005/04/07(木) 15:41:04 ID:5FGEas6v 何であの時Phase3にしなかったのか、今でも悔やまれてしょうがないです…。せめてQVGAにしとくんだったよ。では皆さん頑張って
85 :14 RBSYS :2005/04/07(木) 17:54:03 ID:p0g7FHly ここ良スレだな。みんなすごい技量持ってるし。ガンガレ。超ガンガレ 俺も参加したいけどローグ自体をやったことない(´・ω・`)出来ることは手伝います。
86 :非通知さん@アプリ起動中 :2005/04/07(木) 17:54:53 ID:msMWyOlN 826センセ視界の部分聞きたいんだけど '「TEST_4」 'マップ書き換えサブ label KAE MAP[y] = substr(MAP[y],0,x-1)+ a + substr(MAP[y],x,strlen(MAP[y])-x) return 'マップ表示サブ label HYOJI yield() lock()color(50*LT,50*LT,50*LT) frect(4,4,132,132) color(250-50*LT,250-50*LT,250-50*LT) for i=-LT to LT text(substr(MAP[CHARy+i],CHARx-1-LT,1+LT*2),65-12*LT,78+12*i)nextunlock(1) return MAP[Y]に-X軸の見える範囲(LT)+自分の位置+X軸の見える範囲(LT)のそれぞれの文字列を入れて表示、でよいんだよね? MAP[1]="*□"+"□"+"*□" MAP[2]="*□"+"*"+"□*" MAP[3]="□□"+"□"+"*□" ・ ・ ・ こんなかんじで
87 :非通知さん@アプリ起動中 :2005/04/07(木) 18:15:54 ID:msMWyOlN >14氏 シレン、トルネコ、RogueLike,miRogue。前者ふたつは家庭用、後者ふたつは携帯で無料で落とせるよ で忘れてたけど826センセのおかげでうpと同時にβ版完成とします。 ここからはちと仕様を決めていきたいなと。
88 :14 :2005/04/07(木) 19:46:21 ID:p0g7FHly >>87 ありがとうです。探してみる… って、あれ?チョコボの不思議(ryも似たようなもの?それならやったことある
89 :非通知さん@アプリ起動中 :2005/04/07(木) 20:01:13 ID:k/Qw47ty ↑チョコボよりシレンに近いですね。
90 :826 :2005/04/07(木) 20:15:08 ID:ol0yWh1g '「TEST_本体」 color(70,70,70) frect(0,0,width,height) origin(width/2-66,height/2-72) color(255,255,255) text("LODING",31,70) LT=4 CNT=0 MW=30 MH=30 CMAX=10 '設定 #タイプデータ# #マップ作成# 'キャラ作成 for BCN=1 to CMAX gosub "BONE" next gosub "HPGAUGE" 'HPゲージ gosub "HYOJI" 'マップ表示 soft2("END") 'メイン label MAIN CN=1 label MAIN1 goto Calgorithm[CN] label TURNEND if CN<CMAX then CN=CN+1 goto "MAIN1" endif CNT=CNT+1 if CNT%50=49 then TIME=TIME+1 LT=5-TIME%6 gosub "HYOJI" endif goto "MAIN" #主人公# #アルゴリズムZAKO# #バトル処理# #サブ# #キャラ作成サブ#
91 :826 :2005/04/07(木) 20:15:58 ID:ol0yWh1g '「タイプデータ」 '種類番号1 TDname[1]="主人公" '名前 TDsymbol[1]="@" 'シンボル TDalgorithm[1]="SYUJINKOU" 'アルゴリズム TDhp[1]=100 '体力 TDatk[1]=50 '攻撃力 TDdef[1]=0 '防御力 TDhit[1]=10 '命中 TDavo[1]=4 '回避 '種類番号2 TDname[2]="モンスター" TDsymbol[2]="M" TDalgorithm[2]="ZAKO" TDhp[2]=53 TDatk[2]=10 TDdef[2]=0 TDhit[2]=8 TDavo[2]=0 '種類番号3 TDname[3]="デーモン" TDsymbol[3]="魔" TDalgorithm[3]="ZAKO" TDhp[3]=100 TDatk[3]=40 TDdef[3]=20 TDhit[3]=12 TDavo[3]=3 '種類番号4 TDname[4]="ぬるぽ" TDsymbol[4]="ぬ" TDalgorithm[4]="ZAKO" TDhp[4]=50 TDatk[4]=2 TDdef[4]=10 TDhit[4]=10 TDavo[4]=2 'タイプデータ合計 TDTOTAL=4
92 :826 :2005/04/07(木) 20:16:43 ID:ol0yWh1g '「マップ作成」 '基礎部分 MAP[1]="" for i=1 to MW MAP[1]=MAP[1]+"#" next MAP[MH]=MAP[1] ' for i=2 to MH-1 MAP[i]="#" for j=2 to MW-1 R=abs(rand)%100 if R<=80 then MAP[i]=MAP[i]+" " else MAP[i]=MAP[i]+"*" endif next MAP[i]=MAP[i]+"#" next 'ショップ等書き込み MAPS[1]="<"'洞窟 MAPS[2]="Ψ"'道具屋 MAPS[3]="Ж"'宿屋 for i=1 to 3 RX=abs(rand)%(MW-2)+2 RY=abs(rand)%(MH-2)+2 x=RX y=RY a=MAPS[i] gosub "KAE" next
93 :826 :2005/04/07(木) 20:17:43 ID:ol0yWh1g '「主人公」 label SYUJINKOU Tx=Cx[CN] Ty=Cy[CN] 'キー入力処理 label key k=scan if k and keyleft then Tx=Tx-1 elseif k and keyright then Tx=Tx+1 elseif k and keyup then Ty=Ty-1 elseif k and keydown then Ty=Ty+1 elseif k and keyselect then goto "TURNEND" elseif k and keysoft2 then end else goto "key" endif '移動先チェック p=strat(MAP[Ty],Tx-1) if p=" " then gosub "IDOU" goto "TURNEND" elseif p="*" or p="#" then goto "TURNEND" elseif p="<" then goto "TURNEND" elseif p="Ψ" then goto "TURNEND" elseif p="Ж" then goto "TURNEND" endif goto "BATTLE"
94 :826 :2005/04/07(木) 20:18:34 ID:ol0yWh1g '「アルゴリズムZAKO」 label ZAKO Cx=Cx[CN] Cy=Cy[CN] ECx=Cx[1] ECy=Cy[1] if abs(Cx-ECx)>3 or abs(Cy-ECy)>3 then goto "TURNEND" endif if Cx<ECx then Tx=Cx+1 elseif Cx>ECx then Tx=Cx-1 else goto "ZAKO1" endif Ty=Cy p=strat(MAP[Ty],Tx-1) if p=" " then gosub "IDOU" goto "TURNEND" elseif p="@" then goto "BATTLE" endif label ZAKO1 Tx=Cx if Cy<ECy then Ty=Cy+1 elseif Cy>ECy then Ty=Cy-1 else goto "TURNEND" endif p=strat(MAP[Ty],Tx-1) if p=" " then gosub "IDOU" elseif p="@" then goto "BATTLE" endif goto "TURNEND"
95 :826 :2005/04/07(木) 20:19:46 ID:ol0yWh1g '「バトル処理」 label BATTLE ECN=CIDX[Tx][Ty] r=abs(rand)%10 if r<Chit[CN]-Cavo[ECN] then Chp[ECN]=max( 0, Chp[ECN]-max(0,r+Catk[CN]-Cdef[ECN]) ) color(255,0,0) gosub "Beffect" if Chp[ECN]=0 then goto "LOST" endif else color(150,170,255) gosub "Beffect" endif goto "TURNEND" '被攻撃キャラロスト label LOST dispose(CIDX[Cx[ECN]][Cy[ECN]]) x=Cx[ECN] y=Cy[ECN] a=" " gosub "KAE" gosub "HYOJI" BCN=ECN gosub "BONE" gosub "HYOJI" if ECN=1 then gosub "HPGAUGE" endif goto "TURNEND" '戦闘エフェクト label Beffect if abs(Tx-Cx[1])<6 and abs(Ty-Cy[1])<6 then text("ノ",60+12*(Tx-Cx[1]),74+12*(Ty-Cy[1])) if ECN=1 then gosub "HPGAUGE" endif sleep(50) gosub "HYOJI" endif return
96 :826 :2005/04/07(木) 20:21:23 ID:ol0yWh1g '「バトル処理」 label BATTLE ECN=CIDX[Tx][Ty] r=abs(rand)%10 if r<Chit[CN]-Cavo[ECN] then Chp[ECN]=max( 0, Chp[ECN]-max(0,r+Catk[CN]-Cdef[ECN]) ) color(255,0,0) gosub "Beffect" if Chp[ECN]=0 then goto "LOST" endif else color(150,170,255) gosub "Beffect" endif goto "TURNEND" '被攻撃キャラロスト label LOST dispose(CIDX[Cx[ECN]][Cy[ECN]]) x=Cx[ECN] y=Cy[ECN] a=" " gosub "KAE" gosub "HYOJI" BCN=ECN gosub "BONE" gosub "HYOJI" if ECN=1 then gosub "HPGAUGE" endif goto "TURNEND" '戦闘エフェクト label Beffect if abs(Tx-Cx[1])<6 and abs(Ty-Cy[1])<6 then text("ノ",60+12*(Tx-Cx[1]),74+12*(Ty-Cy[1])) if ECN=1 then gosub "HPGAUGE" endif sleep(50) gosub "HYOJI" endif return
97 :826 :2005/04/07(木) 20:22:24 ID:ol0yWh1g '「サブ」 'キャラ移動サブ label IDOU dispose(CIDX[Cx[CN]][Cy[CN]]) CIDX[Tx][Ty]=CN x=Cx[CN] y=Cy[CN] a=" " gosub "KAE" x=Tx y=Ty a=Csymbol[CN] gosub "KAE" Cx[CN]=Tx Cy[CN]=Ty gosub "HYOJI" return 'マップ書き換えサブ label KAE MAP[y] = substr(MAP[y],0,x-1)+ a + substr(MAP[y],x,strlen(MAP[y])-x) return 'マップ表示サブ label HYOJI yield() lock() color(50*LT,50*LT,50*LT) frect(0,0,132,132) color(250-50*LT,250-50*LT,250-50*LT) l=min(Cx[1]-1,LT) r=min(MW-Cx[1],LT) t=min(Cy[1]-1,LT) b=min(MH-Cy[1],LT) for i=-t to b text(substr(MAP[Cy[1]+i],Cx[1]-1-l,1+l+r),60-12*l,74+12*i) next unlock(0) return 'HPゲージ表示サブ label HPGAUGE yield() lock() color(0,0,0) frect(2,138,129,4) color(255,0,0) frect(2,138,Chp[1],4) unlock(0) return
98 :826 :2005/04/07(木) 20:23:04 ID:ol0yWh1g '「キャラ作成サブ」 label BONE if BCN=1 then TN=1 else TN=abs(rand)%(TDTOTAL-1)+2 endif Cname[BCN]=TDname[TN] Csymbol[BCN]=TDsymbol[TN] Calgorithm[BCN]=TDalgorithm[TN] Chp[BCN]=TDhp[TN] Catk[BCN]=TDatk[TN] Cdef[BCN]=TDdef[TN] Chit[BCN]=TDhit[TN] Cavo[BCN]=TDavo[TN] fg=0 while fg=0 Cx[BCN]=abs(rand)%(MW-2)+2 Cy[BCN]=abs(rand)%(MH-2)+2 fg=(strat(MAP[Cy[BCN]],Cx[BCN]-1)=" ") wend x=Cx[BCN] y=Cy[BCN] a=Csymbol[BCN] gosub "KAE" CIDX[Cx[BCN]][Cy[BCN]]=BCN return
99 :826 :2005/04/07(木) 20:27:36 ID:ol0yWh1g orz間違えて「バトル処理」を2つ上げてしまった、どちらか一つで良いです 取り敢えずキャラデータを複数使えるようにしてみたり。 個人的にはNOVA氏にも参加してもらいたいので少し表示をいじってみた まだアイテム機能とか無いわけですが・・・ バトル処理ルーチンで装備アイテムの分補正を掛けるか、 それとも装備変更メニューでCatkやCdefの値を直接変化させるか・・・。 パラメーターは見やすさを考慮して今のような変数名にしてみたけど、 コピー時の効率とか考えると13氏の案の通り2次元配列にした方が良いような あと、キャラクター関連のデータ管理はやや解りづらいかもしれない 実は昨日の時点ではもっと難解だったけど・・・(余りにも意味不明だったので変更 一度プロが書いたソースを見てみたいなぁ プログラム書いてる内に色々迷うところが有ったので、 やはりもう少し仕様を煮詰めてからの方が良さげですね >>86 まあ大体それで合ってるような微妙に違うような(汗 何故かいつの間にセンセになってるし (((゚Д゚;)))ガクガクブルブル
100 :0.02 :2005/04/07(木) 23:09:44 ID:aWd3O5TO もう>>826 はセンセで決定ですなw お疲れ様ですセンセ、研究させていただきます 俺もアイデアくらいなら出せると思うので応援させて頂きます ドッヘルの中の人も、NOBAサンもみんなで参加しようYO(゚∀゚) ところで保管庫に動きがないのが不安(´・ω・`)
101 :非通知さん@アプリ起動中 :2005/04/07(木) 23:51:54 ID:msMWyOlN >826センセ乙 今の視界 *□□*□ □□□□* **@□□ □□*□* *□□□□ これを *□□*■ □□□□* ■*@□□ □□*□* *□■□■ 障害物での死角を勉強がてらやってみようとおもったんだけど for j=1 to LT*2+1 for i=-LT to LT [CHARx+i][j]を調べる。"*"ならCHARx+iの先は"■" [j][CHARy+i]を調べる。"*"ならCHARy+iの先は"■" next next ところがイマイチマップ書き換えのあたりわからないんでの解説を
102 :826 :2005/04/08(金) 00:55:11 ID:DysAwR6S >>101 マップの書き換え自体は x、yにマップの書き換えたい箇所の座標 aに変更後の文字(全角1文字)を入れてから gosub "KAE" で出来るようになってます 具体的にKAEルーチンで行っている MAP[y] = substr(MAP[y],0,x-1)+ a + substr(MAP[y],x,strlen(MAP[y])-x) returnは、2次元配列に直すと MAP[x][y] = a というただそれだけの事なんですが 表示高速化のためマップを1文字ずつ格納するのではなく一行分まとめて格納してるのでこうなってます もしマップのある行(ここでは仮に7)が "#・・A・*#" の時に、AをBに変えたい場合は MAP[7] = "#・・" + "B" + "・*#" このようにします。 つまり MAP[7] = (MAP[7]のAの左側) + "B" + (MAP[7]のAの右側) ということです これをAの座標(x/4,y/7)を元に処理する場合 (MAP[7]のAの左側) は substr(MAP[7],0,4-1) で、 (MAP[7]のAの右側) は substr(MAP[7],4,strlen(MAP[7])-4) で得ることが出来ます ここでの最大の注意点は マップ座標は1から substrでの箇所指定は0から それぞれ始まっている点です。
103 :826 :2005/04/08(金) 01:46:57 ID:DysAwR6S >>54 気分転換も兼ねてこんなの作ってみたけど参考になるかな・・・ '「名前入力システム」 ABC=" ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789.・-=/" for x=0 to 9 y[x]=0 next x=0 label hyoji yield() lock() clear(0,0,width,height) for i=0 to x text(strat(ABC,y[i]),10+i*6,60) '文字表示 next frect(10+x*6,59,6,1) 'カーソル表示 unlock(0) sleep(100) label key k=scan if k=keyright then x=min(9,x+1) elseif k=keyleft then y[x]=0 x=max(0,x-1) elseif k=keyup then y[x]=(y[x]-1+42)%42 elseif k=keydown then y[x]=(y[x]+1)%42 elseif k=keyselect then goto "kettei" else goto "key" endif goto "hyoji" label kettei name="数字が入力された時の不具合対策" for i=0 to x name=name+strat(ABC,y[i]) 'ネーム作成 next name=substr(name,15,x+1) '"〜不具合対策"をネームから取り除く text("Your neme is",5,80) text("「"+name+"」",15,96) clearinput() input() exit '使い方(キー左右でカーソル移動、上下で文字選択、セレクトで決定)
104 :13 :2005/04/08(金) 02:15:06 ID:HJbTzbn0 >102 なんとなくは、・・ ところでプログラムが全く動かないんだけどまさか限界?なわけないよねf^^; 前に誰かクラシックでコピってるって人いたよね?あれって ttp://c-au.2ch.net/ これじゃないよね?
105 :826 :2005/04/08(金) 03:22:21 ID:DysAwR6S >>104 もしかしてiMona使ってますか? iMona使って全文コピー出来てるなら もしかするとリマーク(')のせいかも(違うかも iMonaの少なくともEZ版だとコピー時に改行コードが反映されないので 例えば '表示 TEXT("XYZ",10,20) こうゆうプログラムだと '表示 TEXT("XYZ",10,20) こうなって無効になってしまうので。 もしこれが原因だったら 今度は '表示' こうゆう風にちゃんと閉じときますんで あとそれもクラシックには違いないですが、レスコピーが出来るのはそれのミラー版の方です ↓ミラーサイトにはこのページから行ける http://c.2ch.net/!.h ↓因にオレはこんな感じに設定して使ってます http://i.i2ch.net/x/-8G1.lI!mail=sage/i クラシックだと改行コードが反映されるんで写すときはおもにiMonaよりこっちを使用 (携帯ベーシックをアプリ中断状態でキープできるし
106 :13 :2005/04/08(金) 08:32:42 ID:HJbTzbn0 >105 すげー便利。ありがと。今までimonaつかってたけど感動しちゃうね。 そしてGJ。すげーGJ で、これから決めることと 【目的】 【ダンジョンのアルゴリズム】 【世界観】 【モンスター発生】 【アイテムの条件】 【攻撃判定】 あとなにかあるかな
107 :727 :2005/04/08(金) 22:07:16 ID:TS3+/4Ts ステータス全般とかはどうかな? 例えばキャラには ●HP(生命力) ●力(攻撃力) ●ガッツ(クリティカル率) ●素早さ(回避率) ●腹(空腹具合) 武器には ●攻撃力 ●命中率 ●特殊オプション(防御無視等) 命中率をキャラ依存ステにしてもいいし。なるべく既存のとは違うモノを作れればいいなと思ってるんだけど…。 なんか関係ないこと言ってたらスマン
108 :826 :2005/04/08(金) 22:29:38 ID:DysAwR6S >>100 (0.02氏) 遅ればせながらライトアウツやってみました 画が綺麗なのが良いですね(ちょっと感動 質問なんですが投稿するときにどこかのスペース抜いたりしましたか? (なんか最初エラーが出て動かなかったので、スペースを一つずつ入れ直したら動きました >>106 (13氏) ミラー版クラシックは時々重いことがあるんで、その時は「テストサーバ」の方使ってくださいね (詳しくは携帯・PHS板にスレが有ったと思うのでそちらを オレは今日初めて「分割コピー」という機能が有る事に気づいたり・・・(遅 機種に関わらず500バイトで分割されるみたい 決めたい事と言えばマップの切り替わり方かなあ エリア移動するたびに作り直すのか否か。 現れるモンスターの種類もエリアに応じて変わる方が良いよね あとはセーブ機能対応にするのかとか(セーブ機能使った事ないけど・・・ >>107 (727氏) >なるべく既存の物とは違う物に オレも同感です 単純にコピー物を作っても(作れたとして)、元の物より面白くはならない訳だし 作るならなるべくオリジナリティーのある物にしたいですね
109 :13 :2005/04/08(金) 22:29:40 ID:HJbTzbn0 【項目】も決めないといけないね 【モンスター発生率】 モンスター[M_LV][][]とモンスターにレベルをいれて モンスターBORN M_LV=abs(rand)%3+深さ にするか 完全randにしちゃうか… 前者はバランスとれば面白いけど後者のハラハラって手めあるんだよね。楽だし 【ダンジョン】 ダンジョンは落石したダンジョン ランダムマップ"*" or " " or ";" ";"は掘れる randに部屋を作る かrogueぽく部屋と通路にするか
110 :13 :2005/04/08(金) 23:01:07 ID:HJbTzbn0 >108 MAP[階層][X][Y] にして 階層が0なら店と降り階段のみ、他は上がり下り階段を表示 下りなら階層+1云々だといけそうだよね。セーブに関してはセーブポイントを地上に設定してステ、アイテムを記録ていう手もあるよ
111 :13 :2005/04/09(土) 03:21:48 ID:f8nioM/j 流れだけ 「固定型マップ作成」 for KAI=0 to 10 MAP[KAI][1]="" 略 'ショップ等書き込み if KAI=0 then j=3 MAPS[0][1]="<"'洞窟 MAPS[0][2]="Ψ"'道具屋 MAPS[0][3]="Ж"'宿屋 else j=1 MAPS[0][1]=">"'上り endif for i=1 to j RX=abs(rand)%(MW-2)+2 RY=abs(rand)%(MH-2)+2 x=RX y=RY a=MAPS[KAI][i] gosub "KAE" next next 1.初めにマップを全部作る(固定型) 2.階段の上り下りでマップをつくる(ランダム型) 3.降りたらマップを作る。帰り道は記憶(帰路固定型) 4.洞窟に入ったらマップを作る(ランダム固定型) みんなどれをやってみたい?ほかにもなにかあるかな
112 :0.02 アイデア豊富・実行力無し :2005/04/09(土) 08:13:17 ID:3LG4koqj >>108 (センセ) すいません、たぶん5行目の「for y=」を 「fory=」としている所かな…凡ミスでした、すみませんorz プレイありがとございます〜 >>111 (13氏) 1の案にするなら、イベントとか入れたいなぁ… そうなるとローグじゃなくなるけど、簡単に鍵と扉みたいな。 ちょっとした謎解きもできそう。 でもランダムの方が何かと簡単だし、2に一票かなぁ… 何も出来ないくせに提案するだけですがorz お金みたいに何かを拾い集めるのっていいかも クリスタルとか、厨房な設定でもいいし レベルアップではなく、クリスタル一個毎に能力が少しずつ上がるとか これの利点はモンスターにEXPを設定しなくて良い、 主人公パラメータにEXP管理がいらないということ ダメな所はモンスター戦闘がダルくなる、 人によって成長度合いに差が出てしまうこと モンスターを倒す度に最大HP+1とかならいいかもですが… モンスター発生に関しては後者の案がなかなか(・∀・)イイ! 強すぎる敵から逃げるという要素も生まれるし面白いかも。 でも強すぎるモンスターばっかり出現すると、 全くゲームにならない可能性があるので ある程度は出現確率を操作できるプログラムがいいですね レアモンスターなんかも設定できそう… またしても提案だけですが_no orz
113 :13 :2005/04/09(土) 11:44:54 ID:f8nioM/j いっそLVの概念を捨てて能力はお金で上げる。SAVEは能力とアイテムを全てお金に換算した値(またはお金のみ)。LOADは金を引き継ぎにすればSAVEはすごい楽。 利点 プレイ毎に能力を変えられる 保存が楽 欠点 アイテムがなくなる。 でもITEMひとつひとつ保存させるのは大変だしなぁ モンスターのバラまきは例えばモンスター毎にLVを1〜5まで決めて R=abs(rand)%100 R<50ならLV1M R<70なら ・ ・ みたいにしてけばよさげ。もしくは(rand)%100+FUKASA*10にして奥に行くほど強くなるとか
114 :NOBA :2005/04/09(土) 16:34:50 ID:OHlHaR/S 流れと関係ない上に今更ですが、T=15and 240こういうこともできたんですね。まぁ、だからなにってこともないんですが…
115 :非通知さん@アプリ起動中 :2005/04/09(土) 22:11:57 ID:hZJq7L6s こんなのどう?ローグにも使えると思う。 MS[i]にセーブ内容代入、MNにMS[i]の要素数を代入、サブルーチンMS呼出でセーブ。 するとサブルーチンML呼出でML[i]にセーブ内容が読み出される これで分かると思う 「実験用」 MS[0]="00000" MS[1]="11111" MS[2]="22222" MS[3]="33333" MN=4 gosub "MS" gosub "ML" for i=0 to bn text(ML[i],0,12*i) next input() exit #MultiSAVE# 「MultiSAVE」 label MS mf=MS[0] for i=1 to MN mf=mf+","+MS[i] next save(mf) return() label ML ls=load() tn=strlen(ls) bn=0 bfi=-1 for i=0 to tn-1 if strat(ls,i)="," then bn=bn+1 ML[bn]=substr(ls,bfi+1,bfn-bfi-1) bfi=bfn endif bfn=bfn+1 next return()
116 :14 :2005/04/09(土) 22:19:18 ID:hZJq7L6s 名乗り忘れっorz MS[i]のiは0からスタート、マイナスは非対応。 拡張しやすく作ったから要望が多ければマイナスと二次元配列変数の保存もつくるよ〜
117 :非通知さん@アプリ起動中 :2005/04/09(土) 22:39:09 ID:kelCgduw >>NOBA氏 できればorとの違いを教えて頂きたく >>14 氏 え!セーブって インデックス使えば何個も覚えさせる事が出来たんですか こりゃやばい事になったぞ(;・∀・)スゴク…イイデス…
118 :14 :2005/04/09(土) 22:47:07 ID:hZJq7L6s >>117 氏 いや、いままで一個しか保存出来なかったから(見た目)複数個保存出来るようにした。 しかしsave()でどれくらい保存できるんだろう…? 二次元配列簡単に出来るとか言っちゃったけどやっぱり嘘だったことが判明(´・ω・`) けどほしい人がいるならガンガル(`・ω・´)シャキーン
119 :NOBA :2005/04/09(土) 23:13:13 ID:OHlHaR/S 100と240は16進で言うと64とF0で2進にすると01100100と11110000ですよね。でそれぞれの演算結果を2進でサラッと言うと 100and 240 01100000 100or 240 11110100 100xor 240 10010100 こんな感じです。ちなみに携帯BASICでの返り値は非ゼロなら1が返るのでどれも1になります。
120 :826 :2005/04/09(土) 23:26:11 ID:4EDepRj/ ゲ製作技術板「ダンジョン自動生成」スレに書いてある中で一番簡単そうな http://pc8.2ch.net/test/read.cgi/gamedev/1027084016/42 のアルゴリズムでダンジョン自動作成プログラム作ってみたけど・・・あんまり面白くないやorz 他のアルゴリズムも見てみたけど良く解らないし・・・見てる内に眠くなってzzz >90-99のプログラムと同じフォルダに入れてから、「TEST_本体」の#マップ作成#の部分を#マップ作成2#に変えて使ってください '「マップ作成2」' '通路幅' TW=2 '前処理' MW=(MW-1)/(TW+1)*(TW+1)+1 MH=(MH-1)/(TW+1)*(TW+1)+1 '基礎部分' MAP[1]="" for i=1 to MW MAP[1]=MAP[1]+"#" next MAP[MH]=MAP[1] a="" for i=1 to MW-2 a=a+" " next for y=2 to MH-1 MAP[y]="#"+a+"#" next '迷路壁作成' for yy=TW+2 to MH-(TW+1) step TW+1 for xx=TW+2 to MW-(TW+1) step TW+1 r=abs(rand)%3 for yp=-(r=0)*TW to (r=2)*TW for xp=-(r=3)*TW to (r=1)*TW x=xx+xp y=yy+yp a="#" gosub "KAE" next next next next
121 :826 :2005/04/09(土) 23:41:05 ID:4EDepRj/ 今気づいた、 >>120 のアルゴリズムじゃ閉じたエリアが出来る可能性があるから、キャラや階段を完全にランダムに配置しちゃ駄目だったorz あと一文字までだったら変数名やラベル名に漢字とひらがな使えたんだね
122 :非通知さん@アプリ起動中 :2005/04/10(日) 22:42:06 ID:gH2CMRcZ なんか乗り遅れた気がしないでもないが…… 複数の変数を保存するルーチンって需要ある?
123 :非通知さん@アプリ起動中 :2005/04/11(月) 07:51:08 ID:svb8l3Qe ぜひ欲しい 元の変数名で取り出せるとさらにありがたい
124 :122 :2005/04/11(月) 10:24:20 ID:8sIk3b3Q CPUパワー3〜5割で動いてるせい(別スレッドで動作)なのか、 はたまた最適化が足りなさすぎるのか、 実験してみると>>115 氏謹製より全然速度でねぇ…… しかも各ルーチン500バイト越えてるし…… おまけにめちゃくちゃメモリ消費するし…… かなりだめぽいorz ルーチン見なおすか……。
125 :非通知さん@アプリ起動中 :2005/04/11(月) 14:33:46 ID:DFMp7sm/ save()変数が複数取り出せるようになったらどんなもの作りたい? 俺はやっぱり、モンスター捕獲型RPGを… ていうか前スレの最後と現行スレの最初にだけ書き込んでるまとめ管理人氏って もしかして偽者だったのか…? 全然更新されてないような気がするんだが
126 :826 :2005/04/11(月) 18:53:57 ID:rAfJ7fq3 >>123 元の変数名で取り出したかったら >>115 氏のルーチンを使って セーブする時に MS[0]=a MS[1]=b MS[2]=c MN=3 gosub "MS" ロードする時は gosub "ML" a=ML[0] b=ML[1] c=ML[2] とすれば出来る 所でモグラ方式のダンジョン自動作成プログラム書いてみたけど今一上手くいかない訳で・・・ 13氏は何かプラン有りますか?
127 :13 :2005/04/11(月) 21:44:37 ID:ie3xPSLB >126 ごめん花見が続いてなんも手つけてなかたよ うまくいかないって閉じたエリアができちゃうこと? ちと考えてみる。
128 :まとめサイト”管理”人 :2005/04/11(月) 22:01:22 ID:+Rm0KeGk >>125 残念ながら本人です。 最近忙しかったのでサボってました…休みを下さいorz 向こうにも書いたのですが、明日あたりには一気に更新出来るかと思います。
129 :非通知さん@アプリ起動中 :2005/04/12(火) 00:25:56 ID:dhnsGtBw すいません。 ブレインFとベーシックの違いを教えてください。 お願いします。
130 :非通知さん@アプリ起動中 :2005/04/12(火) 08:47:55 ID:RtFQkDTc >>まとめ管理人 そうか、正直すまんかった 更新に期待 >>129 BrainFuckは「<>[],.」とかの記号だけでプログラムするんじゃなかったかな 何がどう動くとか何が面白いのかは知らん 文字限定されてるのにゲームとか作れるんだろうか?
131 :14,115 :2005/04/12(火) 08:52:41 ID:oo8D8do1 風邪でぶっ倒れてました。まだ頭痛い… 複数保存に結構需要がありそうなのでしばらくこのネタでやろうかと考えています。 現在のルーチンだと区切りに,を使うんで,は保存できないっす。 ,を保存したいときはルーチンいじってください。","の部分を使わない記号にすれば桶です。
132 :非通知さん@アプリ起動中 :2005/04/12(火) 10:14:48 ID:TecOQJHs >>131 エスケープシーケンス使ってみたらどうかな? カンマ使いたいときは\.とか(iMona書き込みなためカンマ書くと改行しちまう…) まぁぶっちゃけルーチン書き換えた方が早いし少ない命令でいい罠。戯れ事だと思ってスルーしてくれ。
133 :非通知さん@アプリ起動中 :2005/04/12(火) 21:26:29 ID:dhnsGtBw A[0]=frect(0,0,240,240) こうしたらエラーになってしまうんですが。 どうすれば配列を使ってfrectを表示できるのでしょうか?
134 :非通知さん@アプリ起動中 :2005/04/12(火) 21:49:25 ID:tm8XWNl5 βακα..._〆(゚▽゚*)
135 :非通知さん@アプリ起動中 :2005/04/12(火) 23:23:15 ID:TecOQJHs >>133 配列も変数だ。つまり入れられるのは文字か数値。 A[0]=240 frect(0.0.A[0].A[0]) やりたいのはこういうことなのでは? ※iMona改行回避のため、カンマがピリオドになってます
136 :非通知さん@アプリ起動中 :2005/04/13(水) 00:00:40 ID:MTTY3lUx ♂ありがとうございます m(__)m
137 :まとめサイト”管理”人 :2005/04/13(水) 04:37:47 ID:sj9LH2Zm はっ!?寝てしまった…orz
138 :非通知さん@アプリ起動中 :2005/04/13(水) 07:41:30 ID:aWo5C16B >>137 イ`。そしてオ`
139 :非通知さん@アプリ起動中 :2005/04/16(土) 01:15:21 ID:J5XuPSuK あげ
140 :0.02 :2005/04/16(土) 09:25:30 ID:aD3jvqNF 過疎ってますね ■カラーチェッカー(QVGA・非QVGA両対応) soft1("QUIT")R=0r=0g=0b=0w=width h=height p=5 text("←R+,↑G+,→B+,↓RESET",2,15) label 0lock()color(r,g,b)frect(0,20,w,h)color(255,255,255)frect(w-48,25,46,95) color(0,0,0)text("R="+r,w-42,40)text("G="+g,w-42,60)text("B="+b,w-42,80)text("増減幅=",w-46,105)text(p,w-30,119) unlock(1) if r+p<256and scan=keyleft then r=r+p elseif g+p<256and scan=keyup then g=g+p elseif b+p<256and scan=keyright then b=b+p elseif scan=keydown or scan=key0 then r=0g=0b=0 elseif scan=keysoft1 then exit elseif r+p<256and scan=key1 then r=r+p elseif g+p<256and scan=key2 then g=g+p elseif b+p<256and scan=key3 then b=b+p elseif r-p>-1and scan=key4 then r=r-p elseif g-p>-1and scan=key5 then g=g-p elseif b-p>-1and scan=key6 then b=b-p elseif scan=key7 then p=10 elseif scan=key8 then p=5 elseif scan=key9 then p=1 elseif scan=keyast then r=255g=255b=255 elseif scan=keypound then R=r r=g g=b b=R elseif scan=keyselect then gosub 1r=i g=j b=k endif goto 0 label 1 i=abs(rand)%256j=abs(rand)%256k=abs(rand)%256return
141 :0.02 :2005/04/16(土) 13:24:32 ID:aD3jvqNF ■座標&四角描画チェッカー label 8c=1XX=20YY=20soft1("QUIT")soft2("RESET") label 5lock()clear(0,0,240,300)frect(XX,YY,8,8) text("座標X"+XX,70,20)text("座標Y"+YY,140,20) text("移動幅"+c,70,40)text("決定キーで次へ",70,70)unlock() if YY-c>-1and scan=keyup then YY=YY-c elseif scan=keydown then YY=YY+c elseif XX-c>-1and scan=keyleft then XX=XX-c elseif scan=keyright then XX=XX+c elseif scan=keyselect then X=20Y=20goto 0 elseif scan=keysoft1 then exit elseif scan=keysoft2 then goto8 elseif scan=keypound then c=c+1 elseif c>1and scan=keyast then c=c-1 elseif scan=key0 then c=1endif goto 5 label 0lock()clear(0,0,240,300)frect(XX+X,YY+Y,8,8) line(XX,YY,XX+X,YY+Y)rect(XX,YY,X,Y) x=XX+X/2y=YY+Y/2line(x-3,y,x+3,y)line(x,y-3,x,y+3) text("終点X"+X,70,20)text("終点Y"+Y,140,20) text("移動幅"+c,70,40) text("rect("+XX+","+YY+","+X+","+Y+")",70,70)unlock(1) if Y-c>-1and scan=keyup then Y=Y-c elseif scan=keydown then Y=Y+c elseif X-c>-1and scan=keyleft then X=X-c elseif scan=keyright then X=X+c elseif scan=keysoft1 then exit elseif scan=keysoft2 then goto8 elseif scan=keyselect then c=1X=20Y=20 elseif scan=keypound then c=c+1 elseif c>1and scan=keyast then c=c-1 elseif scan=key0 then c=1endif goto 0
142 :0.02 :2005/04/16(土) 13:59:07 ID:aD3jvqNF 忘れてたorz 四角描画チェッカーはQVGA用です。 非QVGAにも対応できるかも知れないけどとりあえずご容赦を。 カラーチェッカーは←↑→、1〜6キーでRGB増減、 7〜9キーでRGB増減値変更、↓と0キーはリセット、 *が裏リセット、#でお遊びです。決定キーでランダム色生成。 四角チェッカーは座標モードは方向キーで座標移動。 決定キーを押すとrectモードへ。 rectモードで決定キーを押すと 座標そのままでrectモード継続のセミリセット。 ソフトキー2で最初から。 両モード共通で、*,#で移動幅を増減、0キーでデフォルトの1になる。 とりあえず活気付き希望age
143 :0.02 :2005/04/17(日) 09:59:23 ID:LwUmKcJz ごめんちょっと四角チェッカー修正 前 : text("終点X"+X,70,20)text("終点Y"+Y,140,20) ↓ 後 : text("終点X"+(X+XX),70,20)text("終点Y"+(Y+YY),140,20) しかしVer.うpこないね べーしっ君さんに見限られちゃったかな…orz
144 :非通知さん@アプリ起動中 :2005/04/17(日) 10:31:34 ID:2QY6J3VV for i=0 to 3 for j=0 to 3 if(i=j)then next endif L=L+1 text(i+" "+j,0,strheight*L) input() next text("あ",100,strheight*L) next text("い",200,strheight*L) おいおまいら!おしえてください。 iとjが等しいときだけ飛ばしたいわけなんだけど if文の中にnextを入れるなんてことはできないの? それとnextの後の命令が実行されない気がするんですけど。 この例だと"あ""い"が表示されない。
145 :あんまり詳しくないけど… :2005/04/17(日) 15:13:00 ID:WVtD6SZl iとjが等しい時、処理を飛ばしたければ、こうすればいいんじゃないかな? for i=0 to 3 for j=0 to 3 if i<>j then L=L+1 text(i+" "+j,0,strheight*L) input() endif next text("あ",100,strheight*L) next text("い",200,strheight*L) input() ↑「iとjが等しくない時処理を行なう」ようにしてみた。 最後にinput()をいれたのは"い"が表示されるのを確認できるようにするため。 ifの中にnext入れるのがダメなのかは分からないけど、確かに変になるよね…3つめのnextが無効になってるのかな…?
146 :非通知さん@アプリ起動中 :2005/04/17(日) 16:26:28 ID:pkLMJVfh ifの中にnextは、BASIC言語の言語仕様として禁止されてなかったっけ?
147 :非通知さん@アプリ起動中 :2005/04/19(火) 11:37:09 ID:n4i0rxrW a<>b ってのはaとbの値(文字列)が異なる時っていう条件式なのか ずっと<>の使い方分からなかったから参考になった a<=0 → aは0以下 a<0 → aは-1以下 a>=0 → aは0以上 a>0 → aは1以上 a<>0 → aは1以上もしくは-1以下(aは0と等しくない) a=0 → aは0と等しい a<=0 とするより a<1とした方が1バイト節約できるんだな(゚∀゚)
148 :非通知さん@アプリ起動中 :2005/04/20(水) 18:53:35 ID:YUuNm8EW プログラムコンテストみたいなことやりませんか(´・ω・`)
149 :非通知さん@アプリ起動中 :2005/04/20(水) 20:13:16 ID:MuQhiR/q いいよ、じゃあ最初のお題はエアホッケーね。
150 :0.02 :2005/04/21(木) 07:53:25 ID:S5icPpOV 面白そうだね バウンサーデモとか前スレのNOBA氏のブロック崩しを参考にしてみよ
151 :非通知さん@アプリ起動中 :2005/04/21(木) 15:18:00 ID:D2vbCS+x じゃあ簡単なルールと採点基準を決めとく? 投稿時はコテ必須。 プログラムが短ければ短いほど、処理が速ければ速いほどいい。 独創性と普遍性をを合わせ持つおもしろさがある。 あとなんかある?
152 :0.02 :2005/04/21(木) 23:31:59 ID:vQICmcxl エラーが出たら減点対象。-30点くらい。 画像が綺麗な物は評価+。主観意見になりそうだけど。 プログラム技術は感嘆の声の数x5点とか。 投稿締切と同時に投票開始、投票締切→結果発表、って感じかな とりあえず4月30日を締切として 5月8日まで投票期間にしてみる?
153 :14 :2005/04/22(金) 07:09:59 ID:I8RdDimg 日程、採点方法に同意っす。 おもしろそう〜漏れもできたら参加する。テストあるから出来るか分からないけど(´・ω・`)
154 :0.02 :2005/04/22(金) 12:08:14 ID:YiswaoMS 投票方法提案 投票は、その作者の最終版プログラムに対して行う。 投票資格はコンテスト作品を全てプレイした者。 一番素晴らしいと思ったプログラムに+5点を入れる。 技術賞プログラムに+2点。(処理速度、プログラムテクニックを評価) アイデア賞プログラムに+2点。(ゲームや表現のアイデアを評価) 画像賞プログラムに+2点。(画像の美しさやレイアウトを評価) その他の作品に3点を振り分ける。 (例:Aに2点、Bに1点/Aに3点/A,B,Cに1点ずつ等) 作者は自分のプログラムに加点できない。 ただし、投票したら作者投票参加点として自分に+3点。 他人を評価しないと損します。 後は投票に左右されないポイント。 ソースを一番短く書けた人+5pt、次いで+2pt、+1pt。以後+0pt。 エラーが出た場合は投票で報告。それ以前の報告は禁止。 報告時点で-20pt。複数報告があってもそれ以上はマイナスされない。 最初にプログラムを提出した人+5pt、次いで+2pt、+1pt。以後+0pt。 投稿作品の修正一回につき-8pt。投稿締切以降は修正不可。 総合得点で優勝を決定。 技術、アイデア、画像、ソース(の短さ)各賞を投票結果から決定。 折角楽しそうな企画なので↑の投票集計が面倒なら俺がやります
155 :非通知さん@アプリ起動中 :2005/04/22(金) 16:25:23 ID://4wlP/Y いや2chだけでこれをやるのは無理だよ。CGI作る必要があるし ここだけでやるならそれぞれの作品について議論したりして決める方法が妥当か。
156 :0.02 :2005/04/23(土) 09:04:57 ID:nvOhfSE2 soft1("EXIT")g=2ve=-3x=50y=55V=4PY=40PY2=40color(20,0,140)frect(5,7,100,76) label 0soft2(PL1+"vs"+PL2) lock()color(20,0,140)farc(x-2,y-2,5,5)color(255,255,255)frect(0,4,6,82)frect(105,2,6,90)color(0,0,200)farc(106,PY2,3,10) color(200,0,0)farc(2,PY,3,10)A=scan if PY<73and A=keydown then PY=PY+3if V<8then V=V+1endif elseif PY>8and A=keyup then PY=PY-3if V>0then V=V-1endif elseif A=keysoft1 then exit endif j=y-5if j<PY2 then PY2=PY2-3elseif j>PY2 then PY2=PY2+3endif x=x+g y=y+ve if y<13then ve=ve-ve*2y=13elseif y>76then ve=ve-ve*2y=76endif if x>101then gosub 3 elseif x<9then gosub 4elseif 52<x and x<58then gosub 5endif color(250,200,0)farc(x-2,y-2,5,5)unlock(1)goto 0 label 3p=PY2+1w=PY2+9 if y<p or y>w then PL1=PL1+1PL2=0onvib()sleep(99)endif if PL1=3then win="YOU WIN !"goto 7endif offvib()g=-3x=101ve=rand%5 color(20,0,140)frect(55,11,5,70)B=abs(rand)%63+13color(255,255,255)frect(55,B-2,5,5)return label 4 gc()p=PY w=PY+10if y<p or y>w then PL2=PL2+1PL1=0onvib()sleep(99)endif if PL2=3then win="YOU LOSE..."goto 7endif offvib()g=3x=9ve=rand%5 color(20,0,140)frect(55,11,5,70)B=abs(rand)%63+13color(255,255,255)frect(55,B-2,5,5)return label 5if B-6<y and y<B+6then g=g*2ve=(rand)%3*3endif return label 7 setfont("S")color(250,230,0)text(win,12,65)unlock(1)onvib()sleep(999)offvib()clearinput()input()
157 :0.02 :2005/04/23(土) 09:22:44 ID:nvOhfSE2 作ってみました。 「エアホッケーブラスト」 かなり効率の悪いプログラムです。制作時間約5時間。 処理速度の遅さを感じさせないゲームスピードとバランスの調整、 あと上端下端の壁をツィ〜〜とボールが伝う謎のバグ修正に ちょっと時間がかかりました…いや単純な事だったんですがorz ゲームスピード調整はうまく出来たつもりです。 上端下端での角度変化のve(角度の変数)=ve-ve*2というのはセルフ目から鱗でした ■操作方法 方向キー上下で自分のパック(左の赤い奴:シャ○専用です)を移動。ボールを打ち返していきます。 ボールを受け切れないと相手に得点が加算され、そのまま跳ね返って行きます。 (跳ね返り時、パックで受けても点を入れても(入れられても)角度はランダムになります…) ・連続で3pt取らないと勝てません。1ptでも取られると自分の得点が0になります。 ・真ん中の白いアイテム?に当たると、速度が2倍になり、角度が変化して飛んで行きます。 ここがブラスト。 …それにしてもボールの動きが不自然過ぎるなぁ >>155 無理かorz じゃあ普通に品評会方式でいいかもね。 他の先生方の作品に期待しております
158 :NOBA :2005/04/23(土) 10:16:26 ID:gsXH1NdD 角度はve=-veてやれば一発だよ。俺も今作ってるけどなんかエアホッケーじゃなくなってきたよ…
159 :0.02 :2005/04/23(土) 10:58:16 ID:nvOhfSE2 >>158 (NOBA氏) うわぁああ…マジですかorz 感動しました、ありがとう エアホッケーじゃない?どんなんだろ…なんか面白そう NOBAさんの作品期待age(゚∀゚)
160 :NOBA :2005/04/23(土) 12:53:08 ID:gsXH1NdD うまくできなかったけど… label 1color(0,0,0)M=0X=99Y=36XV=0YV=0C=0P=0BX=-9frect(0,0,132,144)label 0lock()A=input(0)color(0,0,0)frect(X,Y,3,3)if BX<63then if A and keyup then R=0gosub 5elseif A and keyleft then R=1gosub 5endif endif if A and key1 then end endif PX=X PY=Y if X>66then XV=XV-1else if BX>62and XV>-14and YV>20then R=(XV<-9)*2gosub 5endif XV=XV+1endif X=X+XV/8Y=Y+YV/8if X>132or X<0then XV=-XV endif if Y>72then if X>64and PX<66then p=p+1M=1endif if X<66and PX>65then c=c+1M=1endif YV=YV-1else P=0YV=YV+3endif if Y>142or Y<0then if X>66then c=c+1else p=p+1endif M=1endif color(255,255,255)frect(X,Y,3,3)line(0,72,132,72)line(66,0,66,72)frect(65,72,3,72)unlock(1)if M then text("PUSH ANY KEY",0,20)text(c+"-"+p,0,40)clearinput()input()goto 1endif yield()goto 0label 5if Y>71and P=0then P=1frect(BX-9,BY,18,9)BX=X-4if R=1then BY=Y-4BX=X+4XV=XV-20YV=2-YV i=-8j=8elseif R=2then BY=Y-4XV=XV+20YV=2-YV i=8j=8else i=8j=0BY=Y YV=-YV-2endif color(255,255,255)line(BX,BY,BX+i,BY+j)endif return
161 :NOBA :2005/04/23(土) 12:57:09 ID:gsXH1NdD 自分は右側で上と左で打ち返す。球が横線より下に来ないと打てない。1で終了 クロスしたとこと画面下に重力があり球が上にとびたすか下に落ちるかネット(太い縦線)に当たると点が入る。 コンピュータは弱いです…あまりいじめないでください
162 :14 :2005/04/24(日) 01:41:45 ID:+hxf3Nnp 一応作ったけど重力ネタで被っちゃった(´・ω・`) 残念ながら今回はホッケーは発表出来ない程の悪い出来。控えさせていただきますorz 代わりにホッケー作ったときの副産物置いておきます 「ぐるぐる」 w=width/2 h=height/2 soft1("exit") r=2 origin(w,h-50) label 0 lock() clear(-w,-h+50,w*2,h*2) for i=0 to 4 x[i]=r*cos(t+i*90)/5 y[i]=sin(t+i*90)/5 next for j=0 to 50 step 50 for k=0 to 3 line(x[k],y[k]+j,x[k+1],y[k+1]+j) next next for l=0 to 3 line(x[l],y[l],x[l],y[l]+50) next if input(0)=keysoft1 then exit endif t=t+2 unlock(0) goto 0
163 :0.02 :2005/04/25(月) 09:38:16 ID:ulI0FzlZ おお、きてる NOBA氏の重力ホッケー(?)、30分近くハマってしまった… ちゃんと放物線描いて動くし、中心に重力があるって仕組みもすごい 攻略しがいがある…しかも画像が渋くてカッコイー 14氏のぐるぐる、 渦巻を描く画像デモかな〜と思ったら何この神プログラム 激しくGJです ぐるぐるみて思ったこと… 描画点4点を設定してその中を塗りつぶす命令、欲しいなぁ… あとcls()で全消去、レイヤー機能などなど夢は広がる…
164 :NOBA :2005/04/25(月) 16:21:27 ID:A3pE+ms9 >>0 .0.2 ですよね。いろいろほしくて自分でもプログラミングできるアプリ作ろうとしたんですが、9種類の図形描画と乱数の発生が限界でした。何度みても携帯BASICはよくできてます
165 :14 :2005/04/26(火) 22:00:13 ID:+uGkwFdo >>0 .02氏 塗り潰しをline重ねてやってはみたんですが激重でダメでした。あったらいいですねぇ>>四点で塗り潰し って、ホッケー以外で騒いですいませんです… ちなみにあれは楕円の関数を習ったんで思い付きでやってみたら、結構綺麗だったんで出しちゃいました。 ちょっとした出来心です…副産物であることは確かですが…反省しております
166 :0.02 :2005/04/26(火) 22:16:43 ID:p06TswZy NOBA氏アプリ作れる技術あるのか…(;´Д`) すごいなぁ…もし公開作品あるなら見てみたい(゚∀゚) しかし、基本的にJavaとBASICは違うのに ここまで色々とできる携帯BASICはマジですごい。 もちろんNOBA氏のプログラム技術も毎度ながら参考になります。 字詰めとかきっちりだし、計算式も無駄が皆無だし… 14氏のぐるぐるは色を水色にしてクリスタル〜とか いろいろ遊んでる。綺麗だし…何度見ても神のデキ。 これをRenderModeと別スレッドで走らせたら綺麗かも… って、重くなりそうだけどorz しかしながらこの技術を使ったホッケー、 機会があればぜひ未完でもいいのでどんなものか見てみたいです。
167 :NOBA :2005/04/27(水) 00:03:39 ID:6tZyrtzC >>166 自分的にはR=(XV<-9)*2ってとこがいいなあなんて自分で思ってます。比較演算子は真なら1偽なら0を返すので それを利用しました。ifでやるよりはマシなはずです。携帯BASICの ソースは何度見てもよくできてんなー。の一言です。こんなん作れたらなー・・
168 :14 :2005/04/27(水) 20:54:34 ID:GPz50AbA >>NOVA氏 比較演算子にそういう使い方があったなんて目から鱗です。使わせてもらいます〜 >>0 .02氏 rmode使い方さっぱり分からないんです(´・ω・`)教えていただけると有り難いです。変数がわけワカメ とかいいつつ無理矢理作った習作。実際使ってみても分からない… src="アイウエオカキクケコサシスセソタチツテトナニヌネノハヒフヘホマミムメモヤユヨラリルレロワヲンァィゥェォャュョッ" setfont("T") p=strheight l=5 for i=0 to l x[i]=abs(rand)%width y[i]=abs(rand)%20 next color(0,0,0) frect(0,0,500,500) label 0 lock() rmode(0,255,255) color(0,255,0) for i=0 to l text(strat(src,abs(rand)%55),x[i],y[i]*p) y[i]=y[i]+1 if y[i]*p>height then y[i]=0 x[i]=(abs(rand)%width)-20 endif next color(150,150,150) rmode(1,0,235) frect(0,0,500,500) if input(0)=keysoft1 then exit endif unlock(0) goto 0 フォントサイズとか変数lを端末にあわせていじってください …肝心なホッケーつくってねぇ…orz
169 :0.02 :2005/04/27(水) 22:35:05 ID:ShWiYA1+ 同じくNOBA氏の比較演算で真(1)偽(0)取得、感動しました。 これを応用すれば自分のプログラムもいくつか短くできそう。 ウォールアドベンチャー短くしてageてみるかなぁ。 >>14 氏 rmodeは俺もよくわからんとです… 前スレで、 > ソース見たらrmode()は何もしない設定になってた みたいな事を見かけたんで、Renderのソースから削除したら 全然普通に動作したのでそのままにしてます(-_-; むしろ俺が知りたいですよ…謎だrmode orz そういえば、color(R,G,B)って プログラムの作り方 に載ってないですな…意外 載ってなくても大体わかるけど;
170 :NOBA :2005/04/28(木) 16:55:01 ID:GRan+V/m rmodeはドコモの特に限られた機種でしか使えないようです。最初の値は 0:色の置き換え 1:色の加算 2:色の減算 次は描画先のピクセルの色が反映される比率。 最後が描画するピクセルの色が反映される比率 のことで一度設定するとそれ以降の描画に適応されるようです。 つまり通常の描画はrmode(0,255,255)(置き換え,反映率100%,反映率100%) ということになります。半透明で描きたい時はrmode(1,128,128)とかってやれば良いと思います。
171 :14 :2005/04/29(金) 06:24:57 ID:8biM0ema >>NOVA氏 詳しい解説ありがとうございます。なるほど、これで関数の使い方が分かりました。 けど、限られた機種にしか使えないなら、あまり使わない方がいいか… 結構面白い表現とかも出来るのに残念です
172 :NOBA :2005/04/29(金) 18:19:50 ID:RVD01x6w このスレってなんだかんだでいま三人しかいないね。どうする?
173 :14 :2005/04/29(金) 23:05:57 ID:8biM0ema うーん、入りづらいふいんき(なryなのかも知れないですねぇ。 それに携帯の世代とBASIC打ち込んで使うとかしたことある世代とは少し離れているし… そもそも最近は自分で作らなくても面白いものいっぱいありますからね、作ることを楽しみとする人以外は離れていってしまう。カナシイナ まぁ、こんなこといっててもしょうがない。とりあえずageますか
174 :非通知さん@アプリ起動中 :2005/04/30(土) 22:44:23 ID:7N4L1UIx 締切に間に合いそうもなく、ただあたふたしている俺について
175 :非通知さん@アプリ起動中 :2005/04/30(土) 23:55:36 ID:DF6ly0Fi イ`
176 :非通知さん@アプリ起動中 :2005/05/01(日) 01:05:18 ID:9mS+9TZ1 締切には間に合ってないけど、せっかく作ったので投下。 hs=load()soft1("タイトル")soft2("終了")label 0clear(0,0,width,height)text("air hockey",0,12)text("win : "+hs%100,0,24) text("lose: "+hs/100,0,36)origin((width-120)/2,(height-120)/2)pm=0 pe=0 h=0while h=0m=44e=m dx=50dy=20mx=-2my=1p=0 text("Press any key...",12,60)clearinput()input()clear(-width/2,-height/2,width,12)while p=0lock() clear(0,0,120,120)rect(0,0,119,95)line(60,0,60,95)arc(5,m,4,8)arc(110,e,4,8)arc(dx,dy,6,6)text("score: "+pm+" - "+pe,12,120) unlock(0)s=scan if s=keysoft2 then exit endif if m>0 then m=m-(s=keyup)*2endif if m<88 then m=m+(s=keydown)*2endif dx=dx+mx dy=dy+my h1=(dx<9)*(dy>m-4)*(dy<m+12) h2=(dx>104)*(dy>e-4)*(dy<e+12) ht=h1+h2 mx=mx-mx*ht*2+((s=keyright)-(s=keyleft))*h1+(rand%4-2)*h2 my=my-my*((dy<2)+(dy>88))*2+((s=keydown)-(s=keyup))*h1+(rand%4-2)*h2 e=e+((dy>e)-(dy<e))*2if abs(mx)>4then mx=4*((mx>0)*2-1)endif if abs(my)>4then my=4*((my>0)*2-1)endif p=(dx<0)-(dx>114) if s=keysoft1 then p=1pe=99endif wend pe=pe+(p=1) pm=pm+(p=-1) h=(pe>14)+(pm>14)wend hs=(hs%100+(h<0))%100+(hs/100+(h>0))%100*100save(hs)sleep(200)origin(0,0)goto 0
177 :174=176▽説明 :2005/05/01(日) 01:15:56 ID:9mS+9TZ1 左側がプレイヤーのパッド。右は適当なコンピュータ。 ルールや挙動は典型的すぎるぐらいの15点先取エアホッケー。 上下キーでパッド移動。 ヒット時に方向キーが入っていればその方向に加減速。 勝敗数は記録されます。 タイトルに戻ると逃亡扱いで1敗です。 突貫工事のため(^^;終了では1敗にはなりません。 コンピュータはかなり適当なルーチン(というのもおこがましい)です。 上下に振られると激弱です。 グラフィックを処理し切れず、画面外にごみが残ることがあります。 N2051ではけっこう遅くて難しかったです。 N901iCではかなり早くて難しかったです。 この他の機種での動作確認はしてません。 何度か実行すると、iBASICの動作がもっさりしたりします。その場合はiBASICの再起動で戻ります。 とりあえずこんなとこです。
178 :NOBA :2005/05/01(日) 15:38:39 ID:b5jcqLkA とりあえず3作品だな。自分はどれがよかったか言っていこう。 ちなみに俺はちょっとアレだけど自分のに一票です。他のは俺の機種だと実行速度が遅いのとソースが二つになったからかな。
179 :RPG作成坊や :2005/05/05(木) 16:55:05 ID:Arhs914d save()って変数を一つしか記憶できないんですか?
180 :非通知さん@アプリ起動中 :2005/05/05(木) 20:44:07 ID:JVxaFRnf そうだよ
181 :非通知さん@アプリ起動中 :2005/05/05(木) 22:01:10 ID:Arhs914d じゃあRPG作れないや(T_T)
182 :非通知さん@アプリ起動中 :2005/05/05(木) 22:03:54 ID:GdjADG0O 複数保存を試みようとした奴のソースが前のほうにあるはず。
183 :非通知さん@アプリ起動中 :2005/05/07(土) 00:16:01 ID:Pt84Q+AN エアホッケー審査はどこにいったんだろう…
184 :0.02 :2005/05/08(日) 22:15:52 ID:XumfTzag ギリギリまで待ったけど3作のみかあ… うーん、やっぱNOBAさんには勝てないな。 グラフィック、アイデア、動作スピードがすごいです 独特の操作感覚が楽しかった 名無しさんの作品は…ごめんなさい動かなかったです… パッドは動くけど跳ね返らない… ただ、タイトル画面があるしかなりおしゃれなのはいいと思いました 自分の作品は荒削りだけど唯一アイテムの要素を取り入れたことが自慢です 振り返ってみて…かなり楽しい企画でしたので次回も楽しみです。
185 :NOBA :2005/05/09(月) 00:02:15 ID:OwHIO9sk 確かに名無しさんのはデザインが良かったし、やった後ほんとにアプリの処理が遅くなりました(笑)。 0.0.2さんのもターボを使うとは思はなかったです。ただ二人とももう少しスピードアップできたかもしれないですね。 参加者増加を願って次はもっと簡単なお題がいいですかね?
186 :非通知さん@アプリ起動中 :2005/05/09(月) 19:22:29 ID:/Nzib00B 作る暇がなくて参加できませんでした。ドッヘル作者です。 採点に疑問があるのですが、画像入れたら起動かなり遅くなりますよね。動作速度と起動速度は違うのかな…? もし時間あれば次回は参加したいと思います。作品評価は諸事情により出来ないです。すいませんm(__)m
187 :NOBA :2005/05/10(火) 16:17:14 ID:2ctRgWQQ 動作速度は実行中の速度ですから違います。起動が遅くても絵のデザインがよければ問題ないんじゃないんですか? とにかく次回参加してくれたらうれしいです。みんなはお題はなにがいいのかな?
188 :14 :2005/05/10(火) 20:57:08 ID:dBZcrv3N ども。結局つくらなかったチキンな14です(´・ω・`) 私も採点は控えさせていただきます。みなさんすばらしい出来でした。 次回のお題か…思い付きで電卓とか言ってみる
189 :非通知さん@アプリ起動中 :2005/05/10(火) 22:41:26 ID:EZ0bD9va 寧ろぐるぐるの色付きバージョン(どんな立体でもよし) ※注:立体は色付きで! 一応スローガンとして、 『みんなで携帯BASICの限界にチャレンジだ!!』
190 :14 :2005/05/10(火) 23:33:37 ID:dBZcrv3N ぐるぐる改良 クリスタルに見える予定。変数rをいじってみよう 「激重クリスタルもどき」 w=width/2 h=height/2 soft1("exit") r=8 a=5 origin(w,h) label 0 lock() color(0,0,0) frect(-w,-h,w*2,h*2) for i=0 to 6 x[i]=cos(t+i*60)/3 y[i]=sin(t+i*60)/r next color(c,c,200) c=c+a if c>150 or c<5 then a=-a endif for m=-30 to 30 step 60 for k=0 to 5 line(x[k],y[k]+m,x[k+1],y[k+1]+m) next for l=0 to 5 line(x[l],y[l]+m,0,m*2) next next for l=0 to 5 line(x[l],y[l]-30,x[l],y[l]+30) next if scan=keysoft1 then exit endif t=t+2 unlock(0) goto 0
191 :14 :2005/05/10(火) 23:48:56 ID:dBZcrv3N >>189 楕円媒介変数で作れる立体は正n角柱・錐、またはそれらの混合。 ほかの立体も作れなくはない。ただ三角関数がもう一段増えて楽しいぐらいに重くなること必至。 三角関数多用&表示に大きな画面が必要。だから携帯が限られてしまい、万人参加のコンテストには不向きだと思う。 ってことで、これで許して(´・ω・`)
192 :非通知さん@アプリ起動中 :2005/05/11(水) 13:14:08 ID:v6YUMZJY じゃんけんとかどうかな アイデアと演出を見るて感じで
193 :初心者百号 :2005/05/11(水) 22:35:11 ID:SigyB9wZ 日が経つと発動する、プログラムを作るにはどうしたら良いのでしょうか?
194 :非通知さん@アプリ起動中 :2005/05/15(日) 17:42:36 ID:N5DZNN0r 上昇
195 :非通知さん@アプリ起動中 :2005/05/16(月) 16:37:17 ID:gvDmCegq じゃあ次のお題はワンキーゲームね
196 :非通知さん@アプリ起動中 :2005/05/16(月) 17:10:25 ID:ZSbuajme ワンキーゲームとは犬と猿が出てくるゲームのことですか?
197 :非通知さん@アプリ起動中 :2005/05/16(月) 18:59:24 ID:gvDmCegq …ボタンを一つしか使わないゲームだよ。One key
198 :非通知さん@アプリ起動中 :2005/05/16(月) 19:03:33 ID:ZSbuajme >>197 せっかくボケたのにマジレスしないでくれw
199 :非通知さん@アプリ起動中 :2005/05/16(月) 20:39:11 ID:gvDmCegq いや、ボケなのか?と思ったけどおもしろくなかったからよくわかんなかったんだ。すまんね
200 :非通知さん@アプリ起動中 :2005/05/16(月) 20:57:55 ID:ZSbuajme >>199 犬=ワン 猿=キー ボケの解説をするのも何だけどw
201 :非通知さん@アプリ起動中 :2005/05/16(月) 21:02:45 ID:ZSbuajme ボケついでに言うと昔、猿と犬が出てくる「ワンキーゲーム」と いう名前のゲームをポケコンのBASICで作ったことがある。 文字通り1つしかキーを使わないゲームだったりするw
202 :非通知さん@アプリ起動中 :2005/05/17(火) 00:14:52 ID:QECx2m80 どっちにしてもボケきれてないんじゃね?
203 :非通知さん@アプリ起動中 :2005/05/18(水) 00:25:14 ID:K14rBtC9 お?おまいらおもしろい話で盛り上がっていますね。
204 :201 :2005/05/23(月) 17:16:14 ID:IXVk6lsp 誰も居ぬ(犬) みんな去る(猿)
205 :非通知さん@アプリ起動中 :2005/05/24(火) 18:45:26 ID:/3jPW7oE Wizardryっぽいの作ろうと思って、せこせこ書いてるけど、3Dマップすらむずかしい… ってか重い…orz
206 :非通知さん@アプリ起動中 :2005/05/24(火) 20:28:08 ID:eCTjRYlD 期待(゚∀゚) たまにアゲ
207 :非通知さん@アプリ起動中 :2005/05/24(火) 20:57:14 ID:KMy4X0Dw 3Dマップならずっと前にあったよ。かなーりおもかたけど
208 :非通知さん@アプリ起動中 :2005/05/24(火) 23:45:49 ID:KMy4X0Dw インボリュート曲線 いろんなグラフがあるもんだ。 w=width/2h=height/2PJ=36000label 0lock()if scan=2then end endif J=S*sin(S)+cos(S)*360K=sin(S)*360-S*cos(S)S=S+10line(w+J/1800,h+K/1800,w+PJ/1800,h+PK/1800)PJ=J PK=K unlock(1)yield()goto 0
209 :非通知さん@アプリ起動中 :2005/05/25(水) 00:24:22 ID:nfSctsZS 3Dうんこ color(128,0,0)for X=36 to 1314step 9 rect(width/2+(sin(X*2)-sin(X*100/48))*2/5,X/10,5*X/328,1+X/328)next input()
210 :205 :2005/05/25(水) 00:31:11 ID:J6T1a9X/ せっかくスレにきたので、ワンキーゲームつくってみました。 即席なんで、ソースが恐ろしく長いです(´・ω・`) タイトル『ダルマさん転んだ』 #AA# setfont("L") Z=strheight W=255 origin(width/2-Z*5,height/2-Z*5) soft2("終了") label 00 clearinput() color(W,W,W) frect(-Z*5,0,Z*20,Z*10) color(0,0,0) text("だるまさんがころんだ",0,Z*3) color(0,0,W) text("ボタンを押すと始まるよ",0,Z*5) A=input() if A=keysoft2 then end endif PX=0TJ=1TM=0 label 11 gc() clearinput() if TM>29 then TJ=2 else TJ=1 endif lock() color(W,W,W) frect(0,0,Z*10,Z*10) color(0,0,0) for ZZ=1 to 5 text(P[PX%2][ZZ],(PX-12)*Z/6,Z*(3+ZZ)) text(T[TJ][ZZ],Z*15/2,Z*(3+ZZ)) next text(substr(D,0,TM/3),Z*4,Z*3/2) text(substr(E,0,TM/3),Z,Z*5/2) color(W,W,W) frect(-Z*5,0,Z*5,Z*10) frect(Z*10,0,Z*10,Z*5) frect(Z,Z*2,Z*3,Z) unlock(1) A=input(1) if A=keysoft2 then goto 00 endif if A=keyselect then if TJ=2 then goto 22 endif PX=PX+1 if PX>30 then goto 33 endif endif TM=TM+abs(rand%11) if TM>50 then TM=0 endif goto 11 #勝敗#
211 :205 :2005/05/25(水) 00:32:04 ID:J6T1a9X/ タイトル『勝敗』 Label 22 color(0,0,0)text("Σ",(PX-10)*Z/6,Z*5)sleep(500) lock()color(W,W,W)frect(0,0,Z*10,Z*3)color(0,0,0)text(L[abs(rand%3)],Z*6,Z*5/2)color(0,0,W)text("負けちゃった……",Z,Z*10)unlock(1) sleep(2000)input() goto 00 label 33 lock()color(W,W,W)frect(0,0,Z*10,Z*10)color(0,0,0) for ZZ=1 to 5 text(P[2][ZZ],(PX-12)*Z/6,Z*(3+ZZ))text(T[0][ZZ],Z*15/2,Z*(3+ZZ))next text("タッチしたぞ",Z,Z*3)text("ゴルァ!",Z*2,Z*4)color(W,0,0)text("あなたの勝ち!!",Z,Z*10)unlock(1) sleep(2000) input() goto 00
212 :205 :2005/05/25(水) 00:35:55 ID:J6T1a9X/ タイトル『AA』 D="だるまさんが_____________"E="______ころんだ!!_______" L[0]="プゲラッチョ"L[1]="ニヤニヤ"L[2]="ア、ウゴイタ!" T[1][1]=" ∧_"T[1][2]="(/⊃"T[1][3]=" |"T[1][4]=" |"T[1][5]=" ∪ ̄" T[2][1]=" ∧_"T[2][2]="(・∀・"T[2][3]=" |⊃"T[2][4]=" |"T[2][5]=" ∪ ̄" T[0][1]=" ∧_"T[0][2]="(´・ω"T[0][3]=" |⊃"T[0][4]=" |"T[0][5]=" ∪ ̄" P[0][1]=" ∧ ∧"P[0][2]=" (,゚Д゚)"P[0][3]=" ( つつ"P[0][4]=" 〜 _ヽ"P[0][5]=" )ノ `J" P[1][1]=" ∧ ∧"P[1][2]=" (,゚Д゚)"P[1][3]=" / つ つ"P[1][4]="〜(_⌒ヽ"P[1][5]=" )ノ`J" P[2][1]=" ∧∧"P[2][2]=" (,゚Д゚)"P[2][3]=" ⊂ つ"P[2][4]=" 〜 |"P[2][5]=" し`J"
213 :205 :2005/05/25(水) 00:44:55 ID:J6T1a9X/ 〜遊び方〜 まんまダルマさんが転んだです。 ギコ猫を操作して右の奴にタッチして下さい。 決定ボタンを押すと一歩ずつ進むことができます。 動いてるところを見られたらアウトです。 でも、そんなに難しくないので、あっさりクリアできると思います。
214 :205 :2005/05/25(水) 01:30:02 ID:J6T1a9X/ あ、もしかしたら、機種によっては、動作がはやすぎるかもしれません。 その時は、>>210 の下の方にある、『abs(rand%11)』の数値を小さくしてみてください。ゲームスピードがゆっくりになるはずです。
215 :非通知さん@アプリ起動中 :2005/05/25(水) 01:35:52 ID:h7oSjVwZ WIZ LIKEはどのへんまでやったの?
216 :205 :2005/05/25(水) 06:32:18 ID:J6T1a9X/ まだ3Dダンジョンの部分を作ってます。他の部分(キャンプ、戦闘、町、イベントなど)は、ほとんど手付かずです。 一応3Dダンジョンの部分は、遅いながらも何とかなりそうな所まできました。 前スレものぞいてみようかな…なぜか落ちてないみたいだし。
217 :205 :2005/05/27(金) 00:44:11 ID:oCd7b6SV 3Dダンジョンを歩くやつです。 でも壁しかない上に、かなり重いです…。 タイトル『3D』 soft2("終了")W=255HO=3PX=1PY=1H[1][1]="北"H[1][3]=-1H[2][1]="東"H[2][2]=1H[3][1]="南"H[3][3]=1H[4][1]="西"H[4][2]=-1 MAPA=0000000000110111111111111111111001000100000100000010111011011101010101100010000101001011111111001101 MAPB=0011011001001001111100100110010111111111011001110100100010010011010111011110101001101100100110111011 for XY=0 to 9 for XX=0 to 9 MAP[XX*2+1][XY*2]=substr(MAPA,XY*10+XX,1)MAP[XX*2][XY*2+1]=substr(MAPB,XY*10+XX,1)next next label 01 gc()#i##i2# label 02 K=scan if K=keysoft2 then end endif if K>0 then goto 01 endif goto 02
218 :205 :2005/05/27(金) 00:47:38 ID:oCd7b6SV タイトル『i』 if K=keydown then HO=HO+2 if HO>4 then HO=HO-4 endif elseif K=keyleft then HO=HO-1 if HO=0 then HO=4 endif elseif K=keyright then HO=HO+1 if HO=5 then HO=1 endif elseif K=keyup and MAP[PX+H[HO][2]][PY+H[HO][3]]=1 then PX=PX+H[HO][2]*2 PY=PY+H[HO][3]*2 endif X=H[HO][2]Y=H[HO][3]lock()color(0,0,0)frect(0,0,120,120)color(W,W,W) for Z=0 to 2 if MAP[PX-Y*(Z-1)*2+X*5][PY+Y*5+X*(Z-1)*2]=0 then rect(24*(Z+1),48,24,24)endif next if MAP[PX+Y+X*4][PY+Y*4-X]=0 then color(0,0,0)frect(36,36,12,48)color(W,W,W)line(36,36,48,48)line(36,36,36,84)line(48,48,48,72)line(36,84,48,72)endif if MAP[PX-Y+X*4][PY+Y*4+X]=0 then color(0,0,0)frect(72,36,12,48)color(W,W,W)line(72,48,84,36)line(72,48,72,72)line(84,36,84,84)line(72,72,84,84)endif
219 :205 :2005/05/27(金) 00:49:33 ID:oCd7b6SV タイトル『i2』for Z=0 to 2 if MAP[PX-Y*(Z-1)*2+X*3][PY+Y*3+X*(Z-1)*2]=0 then color(0,0,0)frect(Z*48-12,36,48,48)color(W,W,W)rect(Z*48-12,36,48,48)endif next if MAP[PX+Y+X*2][PY+Y*2-X]=0 then color(0,0,0)frect(18,18,18,84)color(W,W,W)line(18,18,36,36)line(18,18,18,102)line(36,36,36,84) line(18,102,36,84)endif if MAP[PX-Y+X*2][PY+Y*2+X]=0 then color(0,0,0)frect(84,18,18,84)color(W,W,W)line(84,36,102,18)line(84,36,84,84)line(102,18,102,102)line(84,84,102,102)endif for Z=0 to 2 if MAP[PX-Y*(Z-1)*2+X][PY+Y+X*(Z-1)*2]=0 then color(0,0,0)frect(Z*84-66,18,84,84)color(W,W,W)rect(Z*84-66,18,84,84)endif next if MAP[PX+Y][PY-X]=0 then color(0,0,0)frect(0,0,18,120)color(W,W,W)line(0,0,18,18)line(0,120,18,102)line(18,18,18,102)endif if MAP[PX-Y][PY+X]=0 then color(0,0,0)frect(102,0,18,120)color(W,W,W)line(102,18,120,0)line(102,102,120,120)line(102,18,102,102)endif color(W,W,W)frect(120,0,66,120)frect(-66,0,66,120)frect(0,120,120,60)color(0,0,0)text("向き["+H[HO][1]+"]座標["+PX/2+"."+PY/2+"]",0,120+ascent)unlock(1)
220 :非通知さん@アプリ起動中 :2005/05/29(日) 14:09:25 ID:BP6lH28N AGE
221 :非通知さん@アプリ起動中 :2005/05/31(火) 07:40:23 ID:VrdrD6tx もしかして…前スレ落ちた?
222 :非通知さん@アプリ起動中 :2005/05/31(火) 16:09:07 ID:a/kHmbuf >>221 980を越えたら24時間レスがないと落ちる
223 :非通知さん@アプリ起動中 :2005/05/31(火) 18:38:59 ID:VrdrD6tx >>222 そうなのか…サンクス 色々勉強になったから、せめて1000になるまでは残っててほしかったな…、落ちる仕組みが分かっていれば、レスして落ちないようにできたのに…orz
224 :非通知さん@アプリ起動中 :2005/05/31(火) 22:57:29 ID:UKUxy0En ようやくネットがつながって,久々に来たけど, Windows上で,画像ファイルを携帯Basicの画像にするソフトって誰か作ってる? 俺,途中まで作ってたけど,どうも忙しくてだめだ……. 暇を見てログ読みます.
225 :非通知さん@アプリ起動中 :2005/06/06(月) 22:13:13 ID:K+tsv0xA 囲碁つくって思ったけど対人シミュなら簡単だよね FEとかゲームボーイウォーズみたいなやつ
226 :0.02 :2005/06/07(火) 20:55:36 ID:4PRMmlK+ お久しぶりです FE作れる人まで出てきたのか…すごいなあ 最近カードゲームぽい要素を入れたRPG戦闘作ってます 出来たらうpしますねぃ ところでプログラムコンテストはどうなりましたかね(^_^;
227 :NOBA :2005/06/07(火) 23:11:55 ID:zEwBSshC 最近は携帯BASICのPhase2版を改造してました。多分、より使いやすくなってると思います。公開したらとってみてください。
228 :非通知さん@アプリ起動中 :2005/06/10(金) 17:22:35 ID:FQtHz+Co 携帯BASIC改みつけました!SFCaveとかすごい 乙です
229 :ドッヘル :2005/06/11(土) 00:42:28 ID:rpCGYtwn お久しぶりです。 NOBA氏改良乙であります。voda版もありますか?>改 ちょっと見つからないのですが、見つけたら参戦いたします(暇があれば…)
230 :非通知さん@アプリ起動中 :2005/06/11(土) 20:59:52 ID:ytsZdlg9 DoCoMo板はナインでしか?
231 :非通知さん@アプリ起動中 :2005/06/11(土) 21:00:28 ID:Lv6hWcze ■□■□■□■□■□■□■人権擁護法反対大集会in日比谷公会堂■□■□■□■□■□■□■ 【日時】6月 19日 日曜日 【場所】東京都 東京都千代田区日比谷公園 1-3 日比谷公会堂にて 【時間】12:30〜16:00 【アクセス】http://www.tokyo-park.or.jp/hibiya/ http://www.mapfan.com/addreference.cgi?PA=iPcFLJaJKLdNOPQSgTU08_D9Mf2CJ ●を取って使ってください↓ 大規模OFFスレ http://off3.2ch.net/test/read.cgi/offevent/11 ●18343157/ いよいよ最終決戦の幕開けだ!! 勇者達よ! 6月19日 日曜日 日比谷公会堂に集え!! 「真の人権擁護を考える懇談会」の平沼赳夫会長が出席されます(拉致議連会長)。 詳細はこちら↓hを頭につけ●を取って使ってください↓ ttp://blog.goo.ne. ●jp/jinken110 人権擁護法案?ハァ?って人は、↓hを頭につけ●を取って使ってください↓ アニメーション(FLASH)ttp://homepage2.nif ●ty.com/save_our_rights/jinken001.swf サルでも分かる?人権擁護法案ttp://blog.live ●door.jp/monster_00/ ■□■□■□■□■□■□■人権擁護法反対大集会in日比谷公会堂■□■□■□■□■□■□■
232 :非通知さん@アプリ起動中 :2005/06/12(日) 13:11:50 ID:D+T/pp9K gosubってどうゆうときに、どーやって使えばいいんですか?
233 :非通知さん@アプリ起動中 :2005/06/12(日) 14:49:42 ID:aO8dRr++ Cでgotoを使うやつはプログラマ仲間に嫌われる??
234 :0.02 カラーチェッカー改良 :2005/06/12(日) 20:35:18 ID:0bTKGAi3 ■カラーチェッカー改 f=6soft1("RESET")soft2("QUIT")y=1w=width h=height p=5label 0lock()color(r,g,b) frect(0,23,w,h)color(255,255,255)frect(0,25,w,14)color(0,0,0)text("R:"+r+" G:"+g+" B:"+b+" ±"+p,0,37) unlock(1)s=scan if s=key0 then r=0g=0b=0elseif scan=keysoft2 then exit elseif r+p<256and s=key1 then r=r+p elseif g+p<256and s=key2 then g=g+p elseif b+p<256and s=key3 then b=b+p elseif r-p>-1and s=key4 then r=r-p elseif g-p>-1and s=key5 then g=g-p elseif b-p>-1and s=key6 then b=b-p#cc2#
235 :0.02 :2005/06/12(日) 20:42:29 ID:0bTKGAi3 ■cc2 elseif p>0and s=keydown then p=p-1elseif s=keyup then p=p+1elseif s=keysoft1 then x=0y=1color(255,255,255) frect(0,0,w,22)elseif s=keyast then r=abs(rand)%256g=abs(rand)%256b=abs(rand)%256 elseif s=keypound then color(r,g,b)text("■",f*x,y*11)x=x+1 if (x+1)*f>w then x=0y=y+1if y=3then y=1endif endif endif goto 0 上下キー 色増減幅変更 1-6キー RGB増減 * ランダム色 0 RGB=0(黒) # 色プット ソフト1 色プット欄リセット ソフト2 終わり
236 :NOBA :2005/06/14(火) 20:10:49 ID:vVrEbaEc 相変わらず人居ねーなーせっかく改造しても肝心のau使いがいなかった…
237 :非通知さん@アプリ起動中 :2005/06/15(水) 00:24:32 ID:dOAUoqbX 今の時代まぁドキュモが一番売れてるわけで
238 :非通知さん@アプリ起動中 :2005/06/15(水) 22:19:33 ID:rOoLFWK/ >>233 嫌われるって言うか,普通使わないんじゃない? 予備的にあるようなもんだし.
239 :NOBA :2005/06/15(水) 23:51:22 ID:wlPZ5WKX 改だけど…へびにょろ loadimg(A,"5,255,255,255,0,195,0,0,255,0,130,255,0,215,255,0,-1,8,8,0,0,0,0,0,0,0,0,0,0,1,1,1,1,0,0,0,1,2,2,2,2,1,0,1,2,0,2,2,3,3,1,1,2,2,2,2,4,3,1,1,2,2,3,4,4,3,1,1,3,3,3,3,3,3,1,0,1,1,1,1,1,1,0") H=load()for(;M[IX=abs(rand)%16][IY=abs(rand)%16];)「」soft2("EXIT")Q=1M[KX=X=2][KY=Y=8]=S++label 0lock()A=input(0)>>12 if(A==64){end}elsif((A==1||A==8)&&Q!=0){Q=0R=(A==1)?-1:1}elsif((A==2||A==4)&&R!=0){R=0Q=A-3}ZX[S]=Q ZY[S]=R if(X==IX&&Y==IY){L++for(;M[IX=abs(rand)%16][IY=abs(rand)%16];)「」gc()}else{clear(KX*8,KY*8,8,8)M[KX][KY]=0KX=(KX+ZX[S-L]+16)%16KY=(KY+ZY[S-L]+16)%16disvar(ZX[S-L])disvar(ZY[S-L])} if(M[X=(X+Q+16)%16][Y=(Y+R+16)%16]==0){M[X][Y]=S++}else{T="GAME OVER"}drawimg(A,IX*8,IY*8,0)col(0xFF8000+S)frect(X*8,Y*8,8,8)unlock(1) if(T!=0){col(255)text(T,66,52,3)text(L+"てん",66,72,3)save(H=max(H,L))text("最高"+H+"てん",66,92,3)sleep(2000)end}goto 0
240 :非通知さん@アプリ起動中 :2005/06/16(木) 13:38:55 ID:KhQhk/6S ↑DoCoMoじゃ、ジャバロングエラーになるんだが…
241 :NOBA :2005/06/16(木) 15:33:36 ID:NaycK3R5 改で作ったやつですからね。普通のでやる場合は専用の命令は使ってないから書き直せばできると思う。
242 :非通知さん@アプリ起動中 :2005/06/17(金) 22:41:36 ID:giwDeR7W 今saveで複数保存をやろうとしているんですが…過去のをみても全然分かりません。 配列で各々のセーブデータを引き出すにはどうやったらよいのでしょうか?
243 :14 :2005/06/18(土) 02:31:19 ID:eHQ0/JUE >>115 と>>122 が既出の複数保存ルーチンだね。 実は前者は私がつくったんですけど、あれはデータを一つずつ,で区切って結合>保存、読出>分割で複数保存を達成してる
244 :非通知さん@アプリ起動中 :2005/06/18(土) 07:54:47 ID:7bl19MGb >>115 を見たんですけど、訳分かりませんでした。
245 :非通知さん@アプリ起動中 :2005/06/18(土) 19:17:44 ID:e5eCF9XU 携帯BASICで7行プログラミング大会やらない?79文字×7行のやつ
246 :非通知さん@アプリ起動中 :2005/06/18(土) 20:03:39 ID:eHQ0/JUE 詳細キボン
247 :非通知さん@アプリ起動中 :2005/06/18(土) 21:36:40 ID:e5eCF9XU 553文字以内でテトリスや圧縮プログラムを作るってやつです。ム板で前にやってたはず。ただし携帯BASICですからそんな難しいのはできないだろうけど
248 :非通知さん@アプリ起動中 :2005/06/19(日) 00:27:59 ID:vNpXar6E 携帯BASなので100×100にしたほうがいいのでは?
249 :非通知さん@アプリ起動中 :2005/06/19(日) 00:32:26 ID:TWWHH/XV 10000文字?逆に多過ぎないか?
250 :非通知さん@アプリ起動中 :2005/06/19(日) 00:55:13 ID:vNpXar6E ごめん…〇TL 100×10だった。
251 :非通知さん@アプリ起動中 :2005/06/19(日) 01:04:09 ID:vNpXar6E で偉そうな事言っておいてあつかましいんですが… scanを二秒読み込んだら、 つぎのscan読み込みまで三秒必要みたいなことはどうしたら出来るんでしょうか?
252 :14 :2005/06/19(日) 09:26:24 ID:zDo/oKy5 1000あったら結構大がかりなものも作れるかも。 どのくらいの大きさか実感してみたかったからぐるぐる最適化してみたら300ちょいだった。 forと論理演算子うまく使えば結構減量できるな 「軽量最適化ぐるぐる319byte」 w=60 h=w soft1("exit") r=8 origin(w,h-25) label 0 lock() clear(-w,-h+25,w*2,h*2) for i=0 to 3 x[i]=cos(t+i*90)/3 y[i]=sin(t+i*90)/r line(x[i],y[i],x[i],y[i]+50) next for j=0 to 50 step 50 for k=0 to 3 line(x[k],y[k]+j,x[k+1-4*(k=3)],y[k+1-4*(k=3)]+j) next next if scan=keysoft1 then exit endif t=t+2 unlock(0) goto 0
253 :非通知さん@アプリ起動中 :2005/06/20(月) 22:57:28 ID:SC96A5Vt ここは質問しても答えが返ってこないスレです
254 :非通知さん@アプリ起動中 :2005/06/20(月) 23:26:24 ID:cl04wsnY >>253 sokogaiinjanaika
255 :非通知さん@アプリ起動中 :2005/06/21(火) 23:50:57 ID:UXiUTAoV >>254 消えろよ、お前。この板に相応しくない。
256 :非通知さん@アプリ起動中 :2005/06/23(木) 05:56:37 ID:bl33cN30 キャリア?毎に命令文が違ってるのがなぁ… あとやっぱりプログラムの交換もちょっとめんどいよね…。 せめて、誰でも簡単にテキストボックスが扱えるような、携帯からでも入れる掲示板があれば…
257 :NOBA :2005/06/23(木) 07:17:36 ID:gDYUGW9c 今作ってる。まぁ、1000文字専用だけど…
258 :256 :2005/06/23(木) 21:42:01 ID:bl33cN30 >>257 乙です。 今までのレスを見ると、機種によっては1000文字(半角で?)までしかコピーできないのもあるみたいだから、ちょうどいいかと。 なんだかんだ言って、他力本願だな、俺…orz
259 :非通知さん@アプリ起動中 :2005/06/24(金) 14:27:07 ID:qIZQjmPy ここは糞スレですか?
260 :NOBA :2005/06/25(土) 01:06:26 ID:WrxohdwJ できました掲示板。急いで作ったからバグあるかも… ttp://park21.wakwak.com/~kuri/BASIC.html
261 :非通知さん@アプリ起動中 :2005/06/25(土) 13:12:32 ID:zxSLzIwy ↑そのうp板に書き込めないんだけど。
262 :NOBA :2005/06/25(土) 13:15:42 ID:QOeKwVRq 早速バグありました…。すいません。直しときました
263 :非通知さん@アプリ起動中 :2005/06/25(土) 21:14:44 ID:zxSLzIwy テキストボックスが出ません。直してくださいお願いします
264 :非通知さん@アプリ起動中 :2005/06/26(日) 15:23:07 ID:cJAKmPOd ちゃんと出来ますた。ありがとうございマスタ。
265 :非通知さん@アプリ起動中 :2005/06/27(月) 18:09:49 ID:TwbTpazr 携帯ベーシックで>>251 みたいなことできるんですか?
266 :非通知さん@アプリ起動中 :2005/06/27(月) 20:40:49 ID:7vSWKwlN よくわかんないけどできないんじゃない?
267 :非通知さん@アプリ起動中 :2005/06/28(火) 22:14:49 ID:OTW++uhS0 V3G対応おながいします
268 :非通知さん@アプリ起動中 :2005/06/29(水) 00:02:09 ID:OB23W+Ob0 Willcomにしたいけど,携帯Basicに引き留められてる感じ.
269 :非通知さん@アプリ起動中 :2005/06/29(水) 00:22:13 ID:ta5g7UYuO 残念だが無いだろう。最近の機種はアプリが作りづらいからな〜アプリで見たらDoCoMoが一番か
270 :非通知さん@アプリ起動中 :2005/06/29(水) 18:35:29 ID:MSKsBqQ+O >>266 いや普通に出来るから
271 :NOBA :2005/06/29(水) 23:01:42 ID:ta5g7UYuO ソースアップ板使われてね〜…前やってたダンジョンプロジェクトとかやりやすくなると思うんだけど
272 :非通知さん@アプリ起動中 :2005/07/03(日) 17:25:18 ID:9zC+esaFO たまにはage またなんかつくろかな
273 :0.02 :2005/07/03(日) 22:01:09 ID:guSSqjI5O ■ばんのうライト soft2("MODE")label 0onlight() if input(59000)and keysoft2 then soft2("OFF")goto 2endif goto 0label 2color(255,0,0)frect(0,0,240,300)onlight() if input(500)and keysoft2 then exit endif offlight()sleep(500)goto 2
274 :NOBA :2005/07/03(日) 22:38:10 ID:eOOQmvimO 1000文字でテトリスって無理かね?今度やってみようかな…
275 :非通知さん@アプリ起動中 :2005/07/05(火) 10:53:59 ID:nuSQk2mdO てかさぁこのスレ終わり
276 :非通知さん@アプリ起動中 :2005/07/06(水) 11:52:48 ID:pg38Tu/BO >>270 じゃあ教えてくれませんか?
277 :非通知さん@アプリ起動中 :2005/07/07(木) 23:37:38 ID:NBt9eoCcO >>276 おまいなんかに教えてやんね
278 :非通知さん@アプリ起動中 :2005/07/08(金) 00:15:38 ID:iRWWw/CNO label 0 if scan=key**** then **** input(2000)endif goto 0 試してないがこういう事か? 休眠させると困るというなら操作系だけ別スレで走らせるとか
279 :非通知さん@アプリ起動中 :2005/07/08(金) 22:10:46 ID:04qICGhxO >>278 すいません。 休眠するというか、キーを何秒間か読み込んだら、キーを離して、またキーを押したときに 作動するようにしたいんです
280 :非通知さん@アプリ起動中 :2005/07/09(土) 08:17:13 ID:3uVsXPUUO 時間内にボタンを押せば成功 決定キーで操作 やめるにはソフト2を押し続け soft2("長押終")label 0soft1(s+"/"+c)c=c+1clear(0,0,width,height)text("まだだ…気を抜くな",0,12) sleep(abs(rand)%5000+2000) text("よし、2秒以内に押せ!",20,30) if input(2000)and keyselect then goto 1elseif scan=keysoft2 then exit endif text("失敗…",20,50)sleep(2000)goto 0 label 1text("成功!",20,50)s=s+1sleep(2000)goto 0 読み込んだりボタンを離したりがどんなことを指すのかいまいちわからない(;´Д`) どんなゲームを作りたいの?
281 :非通知さん@アプリ起動中 :2005/07/09(土) 08:27:57 ID:3uVsXPUUO スマソ こっちで頼む ちなみに決定キー以外を押すと失敗扱い ソフト1のガイド部分に成功率(成功数/挑戦数)が表示される soft2("長押終")label 0soft1(s+"/"+c)c=c+1clear(0,0,width,height)text("まだだ…気を抜くな",0,12) sleep(abs(rand)%5000+2000) lock()text("よし、2秒以内に押せ!",20,30)unlock(1)clearinput() if scan=keysoft2 then exit elseif input(2000)and keyselect then goto 1endif text("失敗…",20,50)sleep(2000)goto 0 label 1text("成功!",20,50)s=s+1sleep(2000)goto 0
282 :非通知さん@アプリ起動中 :2005/07/09(土) 11:39:20 ID:tBQkf74ZO スーパーマリオワールドの、ジャンプを実現したいのです。
283 :非通知さん@アプリ起動中 :2005/07/09(土) 13:22:29 ID:3uVsXPUUO それならば、地面についているか否かの判定をした方がいいと思う。 もし段差を作りたい場合とか、機能拡張が楽だからね どうしても、と言うならやっぱり別スレッドで操作系を走らせるのがイイかも。 操作系だけ休眠させて、本体ではジャンプの処理。 でもそれだと操作系とうまく同期が取れなかった場合に、空中ジャンプができてしまうことがあるかも。 過去にNOBAさんがどっとあくしょん!というジャンプゲームを作ってたと思うんだけど…参考になると思う。
284 :非通知さん@アプリ起動中 :2005/07/09(土) 16:07:10 ID:tBQkf74ZO 別スレって#どっと#みたいにやるんですか?
285 :非通知さん@アプリ起動中 :2005/07/09(土) 18:15:11 ID:3uVsXPUUO thread("操作系ソース名","適当に変数名をあてがう") →thread("キースレッド","kyth") こんな感じだったと思う threadのところに来ると、指定ソースが平行して起動する その分、携帯BASICの負担は大きくなり、もっさりの原因にもなるが キー操作系くらいなら影響も少ないかも あとは…操作系と本体で共通の変数情報を扱う場合、変数名は大文字の英字にしないとダメ 操作系側でボタンを押すとAが0から1になる、 それを本体側で参照して反映したい場合など
286 :NOBA :2005/07/10(日) 09:48:53 ID:f+JsMIa6O アップ板にテトリスあげました。
287 :↑ :2005/07/11(月) 01:19:55 ID:7Q2oOF6JO そのアップ板だけど携帯だとコピれない。
288 :NOBA :2005/07/11(月) 07:11:55 ID:I53vw+HCO 機種はなんですか?
289 :非通知さん@アプリ起動中 :2005/07/11(月) 07:27:49 ID:vu36aYKyO NOBAさんのソースアップ板は基本Au用なのかな DoCoMoのi-modeブラウザだとテキストエリアは表示されない… なぜかはわからないんだけどuic掲示板とかのテキストエリアは表示される… さてと、べーしっ君さん携帯BASICのバージョンアップをまだまだ待ち続けるぞ(´・ω・`)
290 :NOBA :2005/07/11(月) 13:17:46 ID:I53vw+HCO ドコモか…まさか512バイトまでしか入力できないとかじゃないですよね?<TEXTAREA>はドコモでも使えるはずなんですが…
291 :非通知さん@アプリ起動中 :2005/07/11(月) 13:48:29 ID:7Q2oOF6JO 細かいことは分かりませんが機種はN900iです
292 :非通知さん@アプリ起動中 :2005/07/11(月) 14:25:08 ID:JgqOjwBx0 俺のD901iも表示されなかった。
293 :非通知さん@アプリ起動中 :2005/07/11(月) 14:44:07 ID:7Q2oOF6JO で質問なんですが…配列って 十個ぐらいしか扱えないのですか?
294 :非通知さん@アプリ起動中 :2005/07/11(月) 17:40:02 ID:hzm+vj7F0 ちょっと試してみただけだけど、 1.有効なform内(どうやら<form action="">でokっぽい)に入れる 2.内部の特殊文字はちゃんと処理する で表示できるっぽいよ。(手元のN901iCにて確認) 特に前者が重要っぽい。後者だけ処理しても表示できなかったから。
295 :NOBA :2005/07/11(月) 18:56:40 ID:UAEru3UW0 知らなかった…。一応やってみたけどうまくいってる?
296 :非通知さん@アプリ起動中 :2005/07/11(月) 20:25:42 ID:hzm+vj7F0 N901iC、表示できるようになったのを確認しました。 ただ、特殊文字の処理がなされてないような。。。 機種によっては読み込み容量の問題が出るとは思いますが、 < >は< >に、&は&にきちんと処理したほうがよいのでは? 基本的に、端末のIMEが読み込んだときにはちゃんと1文字になるはずですし。 <蛇足> dammyじゃなくてdummy。 </蛇足>
297 :非通知さん@アプリ起動中 :2005/07/11(月) 20:27:10 ID:hzm+vj7F0 ミスった。。。 ○ < >は< >に、&は&に。
298 :非通知さん@アプリ起動中 :2005/07/11(月) 21:18:46 ID:voQ7Gq4FO 俺のD901はまだ見れないよ〜(ToT)
299 :NOBA :2005/07/11(月) 21:19:28 ID:I53vw+HCO 特殊文字すら表示できないんですか?ドコモって… じゃあ記号系は全部アウトなんですか?
300 :非通知さん@アプリ起動中 :2005/07/11(月) 21:22:19 ID:7Q2oOF6JO N900iP900iはOKであります
301 :非通知さん@アプリ起動中 :2005/07/11(月) 21:30:38 ID:voQ7Gq4FO D901ではまったく見えない状態です。 最初と同じ
302 :非通知さん@アプリ起動中 :2005/07/11(月) 22:43:19 ID:hzm+vj7F0 >>299 いや、別に処理しなくても表示できてるみたいだけどね。 ただ、こういうのはちゃんと処理してやるのがベターじゃないかな、ってだけの話。
303 :一応報告… :2005/07/12(火) 06:52:05 ID:4S4idwF/O N2102Vでは、ちゃんとテキストボックスが表示されるようになりました(・∀・)
304 :NOBA :2005/07/12(火) 07:14:55 ID:eiamMdLaO だいたい大丈夫みたいですね。テトリスはどうですか?
305 :非通知さん@アプリ起動中 :2005/07/12(火) 13:13:12 ID:NT2K6g7wO テトリス激しくモッサリだねw
306 :非通知さん@アプリ起動中 :2005/07/12(火) 20:54:38 ID:NT2K6g7wO 今キー読取りの実験したんだけど…同時キー習得って2つしか出来ないんですね…
307 :非通知さん@アプリ起動中 :2005/07/15(金) 19:49:18 ID:4kTUHyv7O オイ返事はナインかい
308 :非通知さん@アプリ起動中 :2005/07/15(金) 20:38:24 ID:4f1SGHKMO テトリスは…ごめん、俺D900iだけど512文字までしかコピれなかったorz キー取得は…DoCoMoなら仕様。SHTで斜め移動しながら弾撃てない、とか。 他社ケータイも似たようなもんじゃないかな べーしっ君さん、もう見てくれてないのかな… ぜひNOBAさんのEZp2版と互換できるのを作って欲しいんだけど(´・ω・`) あと…セーブ関数増加とかリクエストは諸々あるのだが(以下ry)としておきま
309 :非通知さん@アプリ起動中 :2005/07/15(金) 23:06:45 ID:fbyj+Sq7O >>307 そんなのみんなもう知ってるからだよ。付け加えるとキーの相性によっては3つまで受け付けるよ。
310 :非通知さん@アプリ起動中 :2005/07/16(土) 00:07:16 ID:09SbaHcOO >>308 バージョンアップは 高速化が最優先だな あとはそなたが言った通り、セーブの件だな。
311 :非通知さん@アプリ起動中 :2005/07/16(土) 00:11:11 ID:09SbaHcOO ゴメンサゲ忘れたm(__)m
312 :非通知さん@アプリ起動中 :2005/07/16(土) 00:25:54 ID:09SbaHcOO >>309 相性ってなんですか?
313 :非通知さん@アプリ起動中 :2005/07/16(土) 08:10:11 ID:EF98yyYKO 特定の組み合わせによってはってことだよ。 携帯BASICの高速化なら今はauだけだけどもうされてるよ2〜3倍は出る http://keez.net/soft/
314 :非通知さん@アプリ起動中 :2005/07/16(土) 15:42:46 ID:09SbaHcOO 特定の組み合わせって例えば何ですか?
315 :非通知さん@アプリ起動中 :2005/07/16(土) 16:16:36 ID:EF98yyYKO それは機種によって違うと思うからわかんないけど、そんなに気にすることじゃないと思う。
316 :非通知さん@アプリ起動中 :2005/07/16(土) 20:26:41 ID:09SbaHcOO いやどこもじゃダメだろ。今試したけど一通りもみっから無かった。
317 :非通知さん@アプリ起動中 :2005/07/17(日) 00:32:09 ID:sfT+pLiq0 またドコモか…中途半端だよ。ドコモは、
318 :非通知さん@アプリ起動中 :2005/07/17(日) 14:19:56 ID:Rs4NNyWEO いやDoCoMo最強!!Kタ-------凸(-_-メ)----!
319 :非通知さん@アプリ起動中 :2005/07/18(月) 12:49:53 ID:e9nyba0lO 今日は海の日
320 :今日はテレタビーズの日 :2005/07/19(火) 12:19:59 ID:TdUw0/YWO ついにドコモも高速化された模様。 http://keez.net/soft/
321 :非通知さん@アプリ起動中 :2005/07/19(火) 21:45:17 ID:5pCGfy5PO 確かに1.5倍という数値は妥当ですね。 実機はN900iですが、携帯BAS+で顕著なスピードうpはみられませんでした。
322 :非通知さん@アプリ起動中 :2005/07/20(水) 01:29:08 ID:v7x+F8y1O A=abs(rand)%100+1で、今の数値が2だとすると次はかならず、101>A、0<Aの状態のままで、 A>2もしくはA<2、要するに前の数値以外の数値を取るようにするにはどうしたらいいのでしょうか?
323 :非通知さん@アプリ起動中 :2005/07/20(水) 05:04:43 ID:yJPQltDIO インデックスを使ってみるとか abs(rand)を通るたびにB=B+1するようにしてはどうだろう label 0 B=B+1 A[B]=abs(rand)%100+1 if A[B]=A[B-1]then goto 0endif 描画処理〜 それともビンゴマシーンみたいに一度出た数は出ないようにしたいのか? それなら label 0 A=abs(rand)%100+1 if B[A]=1then goto 0endif B[A]=1 描画処理〜 でどうかな
324 :非通知さん@アプリ起動中 :2005/07/20(水) 11:53:22 ID:v7x+F8y1O >>323 有難うございました。 下のが使えました。 ビンゴゲームというか、椅子取りゲームですね。
325 :非通知さん@アプリ起動中 :2005/07/20(水) 12:06:14 ID:v7x+F8y1O と思ったら。今実験したら、三回目に同じ数値が出てきました(T_T)
326 :非通知さん@アプリ起動中 :2005/07/20(水) 13:19:07 ID:ytp8cX1d0 それは作りが悪いのでは?
327 :非通知さん@アプリ起動中 :2005/07/20(水) 14:01:01 ID:oD+TkGC/0 >>325 いっぺんフローチャートなり、あるいは日本語でもいいけど、 とにかくプログラムがどう動いているか逐一書き出してみることをオススメする。 その際、項目は可能な限り細かくばらして書くこと。 「既出数字以外の乱数をだす」なんてまとめて書いたら意味ないからな。
328 :328 :2005/07/20(水) 14:15:49 ID:pVJt7ROG0 こんなのは? s="0123456789" for i=0to 9 n=abs(rand)%(10-i) v[i]=strat(s,n) s=substr(s,0,n)+substr(s,n+1,10-i) next これなら10回の繰り返しで確実に0〜9の異なる乱数が得られると思うけど
329 :325 :2005/07/21(木) 02:39:28 ID:PzD+wxfWO 遅レスすいません。 とりあえず自己解決しました。御騒がせしてすいませんでした。
330 :非通知さん@アプリ起動中 :2005/07/21(木) 21:32:46 ID:Yho/5NjXO 三角関数をわかってればこんな図形も描ける。 「花」 color(255,0,255)origin(66,72)label 1lock()clear(-51,-51,102,102)for T=G to G+288step 72for I=41to 140step 4line(0,0,cos(T+I+180)*sin(I)/(200+abs(I-90)*2),sin(T+I+180)*sin(I)/(200+abs(I-90)*2))next next G=G+20unlock(1)if input(0)>0then end endif goto 1
331 :非通知さん@アプリ起動中 :2005/07/22(金) 01:45:25 ID:eGjMYnEFO sleep(100)これを一つ目のスレッドでやると何故かもう一方のスレッドでも反映してしまいます。 どうしてでしょうか?
332 :非通知さん@アプリ起動中 :2005/07/27(水) 05:12:40 ID:pYjLUSelO >>331 すまん、いろいろ試したが分からんかった… sleep(a1)って全スレッドで実行するもんなのかな?そのスレッドのみだと思ったんだが… ●メイン thread("サブ","sub")label 0lock()clear(0,0,100,12)a=a+1text(a,0,12)unlock(1)goto 0 ●サブ label 1if input()and keyselect then text("sub th.停止中",0,24)sleep(3000)clear(0,13,120,12)elseif input()and keysoft2 then exit endif goto 1 もっかい試してみる
333 :非通知さん@アプリ起動中 :2005/07/27(水) 05:36:03 ID:pYjLUSelO サブにいろいろ付けてみたが正常だった。 ●サブ soft2("QUIT")label 1K=scan if K=keyselect then y=y+3origin(0,y)color(250,0,0) text("sub th.停止中",0,24)sleep(3000)clear(0,13,120,12)elseif K=keysoft2 then exit endif yield()goto 1 色と描画原点はそのスレッドのみで反映したぞ。もちろんsleep(a1)も。 携帯BASIC+で確認。 一回ソース晒してみたらみんなも添削とかアドバイスとかしやすいかと思われ しかし携帯BASIC+ってD900iで使うとシャア専用くらい速いな
334 :非通知さん@アプリ起動中 :2005/07/27(水) 13:45:29 ID:MzPRojPaO まさかjoin()で回すとやばとかですか?
335 :非通知さん@アプリ起動中 :2005/07/27(水) 15:32:37 ID:aLZI1HRNP 相手が動きだすのを待っててやるとは、おまいって実は優しいんだな。
336 :非通知さん@アプリ起動中 :2005/07/27(水) 17:34:29 ID:pYjLUSelO join()は確か、その命令にきた時点で指定スレッド(仮にA)を起動し Aが終了(プログラムが途切れるかkill()でスレッドAを指定)するまでメインスレッドを《休眠》させるとかだった気が。多分。 うーむ、そりゃメインスレッドも止まって見えると思われ… 今からでも遅くない、組み直すんだ(っД`) どうでもいいが…join使うなんて高度な技使いまつね…俺使ったことないorz
337 :非通知さん@アプリ起動中 :2005/07/27(水) 19:38:32 ID:MzPRojPaO ラベルとゴートゥーの文を使うより処理速度が若干早くなるんでジョインを使っていました。 確かに言われてみればある意味優しいですよねww スレッドが終了するまで待機って、sleep()も…単純ミスでしたOTL スレ汚しすいませんでした
338 :たこす ◆jmZxTSy4xU :2005/08/05(金) 13:28:21 ID:7AGXpmtAO ドンジャラみたいなの作ってみませんか 決めること ・テーマ ・デザイン、レイアウト ・ルール 作るもの ・基本ルーチン ・牌(絵かテキストか) ・役
339 :非通知さん@アプリ起動中 :2005/08/05(金) 21:38:47 ID:i9wSnMOJO リバーシのルーチン作って皆で戦わせないか?
340 :非通知さん@アプリ起動中 :2005/08/05(金) 22:04:35 ID:Gethk4drO まずは少しでも形が見えればみんなも乗ると思う。もう少しつっこんだとこまで決めちゃった方がいいかと
341 :非通知さん@アプリ起動中 :2005/08/06(土) 21:15:21 ID:DGJ4YE4/O おなじみハノイの塔。SPALMで作成。A,B,C3つの塔がありM枚の円盤をAからCへ移します。ただし小さな円盤の上に大きな円盤は置けない。というのを自動でやります。再帰処理の勉強にでもどうぞ M=6 for(i=1;i<M+1;i++){frect(0,144-i*4,40-i,4)P[0][i-1]=i}input() T(N[0]=M,0,1,2) input()func T(A,B,C,D){ A[++L]=A B[L]=B C[L]=C D[L]=D if(A[L]==1){ P(B[L],D[L]) }else{ T(A[L]-1,B[L],D[L],C[L]) L-- P(B[L],D[L]) T(A[L]-1,C[L],B[L],D[L]) L-- } } func P(fr,to){lock()clear(fr*44,144-N[fr]*4,44,4)P[to][N[to]++]=P[fr][--N[fr]]P[fr][N[fr]]=0frect(to*44,144-N[to]*4,40-P[to][N[to]-1],4)unlock(1)}
342 :非通知さん@アプリ起動中 :2005/08/06(土) 22:51:54 ID:+xnA5gvjO >>341 SPALMが公開されてないのに…意味ないだろ
343 :非通知さん@アプリ起動中 :2005/08/07(日) 20:41:45 ID:psb2iDBLO 30×25のフロアに3〜4個の部屋を作り各部屋を通路でつなげたようなマップを自動生成したいのですが高速なアルゴリズムが思いつきません。アイディアのある人はいますか?いたら教えてください。
344 :非通知さん@アプリ起動中 :2005/08/10(水) 00:23:57 ID:6ojXu83KO SPALM用 loadimg(H,"6,0,0,0,40,0,0,80,0,0,160,0,0,210,0,0,255,0,256,0,12,12,0,0,0,0,1,1,1,1,0,0,0,0,0,0,1,1,2,2,2,2,1,1,0,0,0,1,1,2,3,3,3,3,2,1,1,0,0,1,2,3,4,4,4,4,3,2,1 ,0,1,2,3,4,4,5,5,4,4,3,2,1,1,2,3,4,5,5,5,5,4,3,2,1,1,2,3,4,5,5,5,5,4,3,2,1,1,2,3,4,4,5,5,4,4,3,2,1,0,1,2,3,4,4,4,4,3,2,1,0,0,1,1,2,3,3,3,3,2,1,1,0,0,0,1,1,2,2,2,2,1,1,0,0,0,0,0,0,1,1,1,1,0,0,0,0") lock()for(;I<9;I++){makeimg(A[I],112,36)trgt(A[I])origin(56,18)frect(-66,-72,132,144)for(A=0,B=B-5;A>-8;A--){drawimg(H,cos(A*45+B)/2,sin(A*45+B)/8,3)}} trgt(off)frect(0,0,width,height)unlock(0)label 0drawimg(A[C++%9],width/2,height/2,3)if(scan){end}goto 0
345 :非通知さん@アプリ起動中 :2005/08/10(水) 15:37:32 ID:6ojXu83KO ちょい改造。RPGの魔法とかに使ってくれ 改行は自分で消してね loadimg(H,"6,0,0,0,40,40,40,80,80,80,160,160,160,210,210,210,255,255,255,0,12,12,0,0,0,0,1,1,1,1,0,0,0,0,0,0,1,1,2,2,2,2,1,1,0,0,0,1,1,2,3,3,3,3,2,1,1,0,0,1,2, 3,4,4,4,4,3,2,1,0,1,2,3,4,4,5,5,4,4,3,2,1,1,2,3,4,5,5,5,5,4,3,2,1,1,2,3,4,5,5,5,5,4,3,2,1,1,2,3,4,4,5,5,4,4,3,2,1,0,1,2,3,4,4,4,4,3,2,1,0,0,1,1,2,3,3,3,3,2,1,1,0,0,0,1,1,2,2,2,2,1 ,1,0,0,0,0,0,0,1,1,1,1,0,0,0,0")lock()for(;I<9;I++){makeimg(A[I],width,36)gc()trgt(A[I])origin(width/2,18)for(A=0,B=B-5;A>-8;A--){drawimg(H,cos(A*45+B)/2,sin(A*45+B)/8,3)}} trgt(off)frect(0,0,width,height)clip(0,height/2-18,width,36)label 0lock()clear(0,height/2-18,width,36)drawimg(A[++C%9],width/2,height/2+P=P-(C>71),3)if(scan||C>120){end}unlock(1)goto 0
346 :非通知さん@アプリ起動中 :2005/08/10(水) 15:48:14 ID:3uy65LdQO trgt()これは使わないでくれ。iアプリとの互換性がなくなる
347 :非通知さん@アプリ起動中 :2005/08/12(金) 10:39:53 ID:jHCKuNfS0 「light」 soft2("Exit") label 0 a=10 x=20 origin(0,0) color(0,0,0) frect(0,0,255,255) origin(120,0) y=0 p=rand%x q=rand%x label 1 #light1# label 2 #light2#
348 :非通知さん@アプリ起動中 :2005/08/12(金) 10:40:27 ID:jHCKuNfS0 「light1」 k=a+abs(rand)%8 color(196,98,196) line(p-2,y,q-2,y+k) line(p+1,y,q+1,y+k) color(255,196,255) line(p,y,q,y+k) p=rand%x y=y+k if input(0) and keysoft2 then exit endif if y>128 then x=10 endif goto 2
349 :非通知さん@アプリ起動中 :2005/08/12(金) 10:41:44 ID:jHCKuNfS0 「light2」 k=a+abs(rand)%8 color(196,98,196) line(q-1,y,p-1,y+k) line(q+2,y,p+2,y+k) color(255,196,255) line(q,y,p,y+k) q=rand%x y=y+k if input(0) and keysoft2 then exit endif if y>255 then goto 0 else goto 1 endif 以前から作ってみたかった落雷プログラムです 改良したら、もうちょいリアルな雷になりそう
350 :NOBA :2005/08/13(土) 15:33:16 ID:6A4ZYucjO なんとか1000文字に詰めたSPALM用リバーシです `="の番です"_="そこには置けません"soft1("パス")soft2("終")@(M,"黒","白")origin(width/2-64,0)label 1for(T=E=a=0;a<8;a++){copy(B,0,B[a],0,8)}B[3][3]=B[4][4]=1B[4][3]=B[3][4]=2 col(0x8000)frect(0,0,128,128)col(0)for(a=0;a<9;a++){line(0,a<<4,128,a<<4)line(a<<4,0,a<<4,128)}for(a=0;a<4;a++){col((a<3&a>0)*0xFFFFFF)farc(51+(a%2)*16,51+(a/2)*16,11,11)} label 0lock()col(0)rect(X<<4,Y<<4,16,16)if(64==A=input(0)>>12 ){end}elsif(A&2){X=X-(0<X)}elsif(A&4){X=X+(7>X)}if(A&1){Y=Y-(0<Y)}elsif(A&8){Y=Y+(7>Y)}elsif(A==16){if(B[X][Y]){T=_}else{ for(OK=i=0;i<9;i++){i==4&&i++;H=U+1P=X Q=Y C(i%3-1,i/3-1)}if(_!=T=OK?M[U=!U].`:_;){if(++E==60){for(a=0;a<64;T[B[a%8][a++/8]]++){}T=M[T[0]>T[1]]."の勝ち"}}}}elsif(A==32){T=M[U=!U].`}col(0xC0FF)rect(X<<4,Y<<4,16,16) unlock(1)if(T){col(0)text(T,0,129,0)clearkey()input()clear(0,129,128,25)if(strat(T,2)=="勝"){goto 1}T=0}goto 0func C(x,y){while(B[P=P+x][Q=Q+y]+H==3){}if(abs(P-X)>1|abs(Q-Y)>1&&B[P][Q]==H){col((H-1)*0xFFFFFF) while(X!=P||Y!=Q){B[P=P-x][Q=Q-y]=H farc(P*16+OK=3,3+Q*16,11,11)}}}
351 :NOBA :2005/08/13(土) 15:50:20 ID:6A4ZYucjO 所々間違えてた…修正版&短くした `="の番です"_="そこには置けません"soft1("パス")soft2("EXIT")@(M,"黒","白")origin(width/2-64,0)label 1for(G=T=E=a=0;a<8;a++){copy(B,0,B[a],0,8)}B[3][3]=B[4][4]=1B[4][3]=B[3][4]=2 col(0x8000)frect(0,0,128,128)col(0)for(a=0;a<9;a++){line(0,a<<4,128,a<<4)line(a<<4,0,a<<4,128)}for(a=0;a<4;a++){col((a<3&a>0)*0xFFFFFF)farc(51+(a%2)*16,51+(a/2)*16,11,11)} label 0lock()col(0)rect(X<<4,Y<<4,16,16)if(64==A=input(0)>>12 ){end}X=X-(A&2&&0<X)+(A&4&&7>X)Y=Y-(A&1&&0<Y)+(A&8&&7>Y)if(A==16){if(B[X][Y]){T=_}else{for(OK=i=0;i<9;i++){i==4&&i++;H=U+1P=X Q=Y C(i%3-1,i/3-1)}if(_!=T=OK?M[U=!U].`:_;){if(++E==60){for(a=0;a<64;T[B[a%8][a++/8]]++){}G=T=M[T[2]>T[1]]."の勝ち"}}}}elsif(A==32){T=M[U=!U].`}col(0xC0FF)rect(X<<4,Y<<4,16,16)unlock(1) if(T){col(0)text(T,0,129,0)clearkey()input()clear(0,129,128,25)if(G){goto 1}T=0}goto 0func C(x,y){while(B[P=P+x][Q=Q+y]+H==3){}if(abs(P-X)>1|abs(Q-Y)>1&&B[P][Q]==H){col((H-1)*0xFFFFFF) while(X!=P||Y!=Q){B[P=P-x][Q=Q-y]=H farc(P*16+OK=3,3+Q*16,11,11)}}}
352 :NOBA :2005/08/14(日) 17:32:01 ID:7UXuTy6XO ☆AI対戦型ロボットバトル「ロボ魂」☆ ふたつのプログラムを戦わせるプログラムです。キー操作は禁止。AIはP1とP2で、自分がどっちなのかは変数jを見るとわかります。 j=0→P1 j=1→P2 戦い方は4つの関数を呼び出し移動,回転,弾発射,シールドを使い分けて戦います。またHPは初期で10000ありますが移動やシールドでもHPが減ります。 ☆関数☆ I(kaku,kyori)…kaku度にkyoriだけ進む。またHPからkyoriの2乗ずつ引かれる。 R(kaku)…kakuだけ砲頭を回す。 F(num)…弾を発射。弾は3発まで撃てるが、画面外に消えるまでは撃てない。弾は当たると200のダメージになる。撃つ弾番号をnumで指定する S()…呼び出す度にシールドのオン・オフを切り替える。ただしシールドを張っている間は毎回10ずつHPが引かれ、ダメージを40%に減らせる ☆プログラムの決まり☆ 本体で使われている変数は使えません。ただし、参照だけなら可能です。敵の位置などによって動きを変えられます。主な変数は下です E[]…HP T[]…向き(度) X[]Y[]…座標 BX[j.0〜2]BY[j.0〜2]…弾の座標 S[]…シールドのON・OFF 弾の座標は字数節約のためプレイヤー番号と弾番号を文字列連結したものをindexとします。 ほんとはもっといろいろつける予定でしたが処理速度とめんどくささのためにやめました。その結果オセロに続きこれも1000文字に収まりました。いろいろAI考えてみてください。
353 :NOBA :2005/08/14(日) 17:36:03 ID:7UXuTy6XO 「ロボ魂」 w=width h=height r=w/20setfont("L")text("ロボ魂!!",w/2,h/4,3)setfont("S")text("PUSH START",w/2,h*3/4,3)input()E[0]=E[1]=10000@(T,0,180)@(X,w/4,w*3/4)@(Y,h/2,h/2)label 0lock()col(0) clear(j=i=0,0,w,h)#P1#j=1#P2#while(i<2){E2[i]=E[i]for(j=0;j<3;j++){if(BY[i.j]){arc(BX[i.j]=BX[i.j]+(cos(BT[i.j])*r>>7 ),BY[i.j]=BY[i.j]+(sin(BT[i.j])*r>>7 ),r/3,r/3)BY[i.j]=BY[i.j]*(BY[i.j]>0&&BY[i.j]<h&&BX[i.j]>0&&BX[i.j]<w) if(pow(BX[i.j]-X[!i],2)+pow(BY[i.j]-Y[!i],2)<r*r*4/9){E[!i]=E[!i]-200BY[i.j]=0C[!i]=0xFF0000}}}i++}for(j=0;j<2;j++){if(S[j]){C[j]=C[j]|S[j]*255if(i=E2[j]-E[j]){E[j]=E2[j]-i*2/5}E[j]=E[j]-10}col(C[j])arc(X[j]-r/2,Y[j]-r/2,r,(C[j]?C[j]=0:0;)+r) text(E[j],j*w/2,0,0)}unlock(1)if(E[0]<1|E[1]<1||scan){text((E[0]<E[1])+1."の勝ち",w/2,h/2,3)input()end}goto 0func F(n){if(!BY[j.n]){BT[j.n]=T[j]BX[j.n]=X[j]BY[j.n]=Y[j]E[j]--}}func R(n){T[j]=T[j]+n} func I(n,O){O>40?O=40:0;if(w>X[j]&&X[j]>0){X[j]=X[j]+cos(n)*O/100}if(h>Y[j]&&Y[j]>0){Y[j]=Y[j]+sin(n)*O/100}E[j]=E[j]-O*O}func S(){S[j]=!S[j]}
354 :非通知さん@アプリ起動中 :2005/08/18(木) 17:19:39 ID:ul4KxiCAO srand()これって何の命令ですか?
355 :非通知さん@アプリ起動中 :2005/08/21(日) 00:54:56 ID:7BHr9hcp0 ランダムに種を与えてよりランダムになるようにする命令。あんま意味無い
356 :非通知さん@アプリ起動中 :2005/08/23(火) 15:40:12 ID:2J3tnu+9O だれもいないお(つД`) 淋しいお。
357 :非通知さん@アプリ起動中 :2005/08/23(火) 17:36:35 ID:XY9XnbWbO 誰かおもしろそうなプロジェクト立ててくれないかな…(´・ω・`)
358 :非通知さん@アプリ起動中 :2005/08/24(水) 00:04:38 ID:jHGOvezcO SPALMでローグライクなんてどう? 本当の気持ち たのむお。みんなで何か創ろうお(つД`) 氷河期なんてもうやだお。みんな何処いっちゃったんだお…・。゚(つД`)゚。・
359 :非通知さん@アプリ起動中 :2005/08/24(水) 05:08:47 ID:xrX7/edxO うちvodaで、新しいBASICのプログラムとかについていけなかった。 携帯BASICはいくつかプログラムを保存してるせいで、一つのプロジェクト作るにも時間かかりすぎて… 結果、スレは覗いてるけどプログラムは放置って感じになってます(;´д`)ゴメンヨ
360 :非通知さん@アプリ起動中 :2005/08/24(水) 11:53:06 ID:ouiQuBQJ0 なんつーか暇だし、なんかつくるなら手伝うべ
361 :非通知さん@アプリ起動中 :2005/08/26(金) 17:12:10 ID:uD8GIpL3O ビットシフトってなんですか?
362 :非通知さん@アプリ起動中 :2005/08/26(金) 23:30:28 ID:wAng2v3oO 何人か集まりそうだしなんかみんなでつくろうか
363 :非通知さん@アプリ起動中 :2005/08/27(土) 00:51:25 ID:vC+vu5Rr0 >>361 数値をnビットずらすこと。言い換えると2のn乗倍の値で数値を割ったりかけたりすることです。 普通に/とか*でやるよりは早い >>362 その言葉を待ってた!!
364 :非通知さん@アプリ起動中 :2005/08/27(土) 01:06:33 ID:avoF/GmiO 俺もローグライク作りたい。よって参戦したい。
365 :非通知さん@アプリ起動中 :2005/08/27(土) 09:44:38 ID:SEtwGPJ/O 少し形になってるからアップしてみた。 ttp://park21.wakwak.com/~kuri/cgi-bin/pbbs.cgi?mode=source&no=0 ttp://park21.wakwak.com/~kuri/cgi-bin/pbbs.cgi?mode=source&no=1 使えるかな?ポイントは画像使ってるけど、スクロールが速いとこなんだけど
366 :非通知さん@アプリ起動中 :2005/08/27(土) 11:16:38 ID:avoF/GmiO 時々かくかくと動くのは仕様か、それと部屋も四つしかなくね? それにしてもGJ!だぜ
367 :非通知さん@アプリ起動中 :2005/08/27(土) 12:44:38 ID:SEtwGPJ/O かくかくはしないはずです。部屋は位置と大きさが微妙に変わるだけで大まかな位置も数も変わりません。通路にいたっては毎回同じです。まぁ、これが限界かと。
368 :非通知さん@アプリ起動中 :2005/08/27(土) 12:46:41 ID:SEtwGPJ/O あと、ちなみにどれくらいなめらかに動いてますか?
369 :非通知さん@アプリ起動中 :2005/08/27(土) 14:38:21 ID:avoF/GmiO いや途中でカクカクするぜ。スクロールは確かに早いが、プレイヤーの歩くスピードが途中でかわるのがなぁ…
370 :368 :2005/08/27(土) 17:31:20 ID:SEtwGPJ/O もしかしてはじっこに行ったときスピードが変わるやつですか?だったらどうにもなりません。はじっこではスクロール処理が無い分速いですから
371 :非通知さん@アプリ起動中 :2005/08/27(土) 17:42:21 ID:avoF/GmiO func A(a,b){arc(a,b,5,5)A==b+a} こういう式をA(a,b)の形で書き出して、 例えばA(20,50)A(50,20)と、やると図形は描画されるんだが…A==b+aが反映されない。誰かなんでだか教えてくれれぇぇぇ〜(゚Д`)
372 :非通知さん@アプリ起動中 :2005/08/27(土) 17:58:49 ID:avoF/GmiO ちなみに端の方で遅くなった。
373 :368 :2005/08/27(土) 19:33:17 ID:SEtwGPJ/O >>371 A=b+aじゃない?==じゃ等値比較だけで代入がされないから。 >>372 ますます意味がわからない…
374 :非通知さん@アプリ起動中 :2005/08/27(土) 19:36:24 ID:avoF/GmiO それでもできなかった
375 :368 :2005/08/27(土) 22:17:49 ID:SEtwGPJ/O え?じゃあなにがしたいんですか?
376 :非通知さん@アプリ起動中 :2005/08/29(月) 16:12:36 ID:+Ak5v+afO なんかまた人が少なくなったな
377 :非通知さん@アプリ起動中 :2005/08/29(月) 18:22:48 ID:NfyE6p1ZO そもそもSPALMの存在に気づいてない椰子が多いのでは ところでcol()って赤を出すときはcol(255000000)って書くのか?
378 :非通知さん@アプリ起動中 :2005/08/29(月) 18:48:19 ID:+Ak5v+afO おまいそんなのもわからんのか、でわわたすぃが教えてしんぜよう‥ 実は私にもわからない… てのは嘘でcol(0xFF0000) だしょ?汗
379 :非通知さん@アプリ起動中 :2005/08/29(月) 20:06:55 ID:NfyE6p1ZO col(0xRRGGBB)、か…ありがとん 16進しか指定できないんだな しかしいろいろ機能拡張してて楽しいな bgm使いたい
380 :非通知さん@アプリ起動中 :2005/08/29(月) 20:29:06 ID:+Ak5v+afO おぬしは何処も?ユーザーかね?
381 :非通知さん@アプリ起動中 :2005/08/29(月) 21:24:44 ID:28twK0RvO 別に10進でもできるけど… 16711680
382 :非通知さん@アプリ起動中 :2005/08/29(月) 21:40:15 ID:+Ak5v+afO そりやとメンドクセーダニィ
383 :非通知さん@アプリ起動中 :2005/08/29(月) 21:46:25 ID:NfyE6p1ZO DoCoMoだよ 悪評高きD900i そろそろ機種変か
384 :非通知さん@アプリ起動中 :2005/08/29(月) 22:05:59 ID:+Ak5v+afO まぁわいもN900iだし、かわりないだすぅー
385 :非通知さん@アプリ起動中 :2005/08/29(月) 22:10:00 ID:+Ak5v+afO ローグライクみんなで再始動だにぃー。SPALMでツクルダニィー。
386 :非通知さん@アプリ起動中 :2005/08/30(火) 18:25:48 ID:FstE1W75O みんなの携帯だとアップ板にあるアクションてゲーム何FPSぐらい出てる?ちなみに俺のは7.5強位なんだけど、遅い?
387 :非通知さん@アプリ起動中 :2005/08/30(火) 19:59:26 ID:gmi6HBXIO なんか創ろうぜ
388 :非通知さん@アプリ起動中 :2005/08/31(水) 07:52:17 ID:2qHKaKNqO 画像を使った奴がいいです
389 :非通知さん@アプリ起動中 :2005/08/31(水) 12:44:37 ID:Xvs9JFcVO 90氏後輪願う。そしてローグライクをパワーアップさせようじゃないか。
390 :非通知さん@アプリ起動中 :2005/09/01(木) 15:37:03 ID:vyBbu0mUO 誰もいないんかいっ (υ゚ω゚υ)
391 :非通知さん@アプリ起動中 :2005/09/01(木) 15:52:30 ID:dH0X64LXO みんないい加減ローグに飽きたからじゃない?
392 :非通知さん@アプリ起動中 :2005/09/01(木) 17:37:14 ID:vyBbu0mUO あきたとかないからっ(笑
393 :非通知さん@アプリ起動中 :2005/09/02(金) 08:56:06 ID:wPlqc9CsO SPALMやるぞゴラ
394 :非通知さん@アプリ起動中 :2005/09/04(日) 00:39:29 ID:SsiKDRoQO そして誰もいなくなった
395 :非通知さん@アプリ起動中 :2005/09/04(日) 14:11:18 ID:4EGDyWuR0 SH700iでiBASIC動かせている人居ます? やってみたいなあと思って落としたけど 起動するときに「αエラーが発生しました」とでて起動できません。 自分もしてみたい・・・
396 :非通知さん@アプリ起動中 :2005/09/04(日) 16:54:43 ID:4EGDyWuR0 すいません http://naoya.stargroove.jp/ibasic/ こちらで落とさせてもらったら出来ました。
397 :非通知さん@アプリ起動中 :2005/09/04(日) 22:01:11 ID:SsiKDRoQO >>396 俺と一緒にゲームを作りませんか?
398 :396 :2005/09/04(日) 22:18:46 ID:4EGDyWuR0 いいですね。 とりあえずがんばって色々試したりして覚えてみます!
399 :非通知さん@アプリ起動中 :2005/09/04(日) 23:21:16 ID:SsiKDRoQO でもまた何でiBASICなんですか?
400 :非通知さん@アプリ起動中 :2005/09/07(水) 00:21:02 ID:zNOr3uv80 iBASIC大好き人間だったんだけど、ソフト二つも保存すりゃ、 容量満タンになるんで萎えてたら、携帯BASICってのがあるの知った。 明日から休み時間とか使ってなんか作ってみよう。 目標は弾幕
401 :非通知さん@アプリ起動中 :2005/09/07(水) 10:02:43 ID:TkLTmIxMO さらにSPALMと言う手もあるぞ、まあそんなにBASIC が好きなら別だが。。
402 :400 :2005/09/07(水) 17:34:34 ID:zNOr3uv80 >>401 あのあとスレざくっとよんで、試してみました。 関数定義できたり、{ }でくくったりで使いやすいので移行ー。 そしていざ自機狙い弾を作ろうとしたら、平方根も求められないし、tanの逆(横と縦から角度)も無いのね・・・ 仕方ないから16方向の角度算出関数を自作。判定値は定数(おは しばらくはどこまで重くなってもゲームになるか検討しながら3way弾とかいろいろやってみようと思う。
403 :400 :2005/09/07(水) 17:35:37 ID:zNOr3uv80 func at16(ah,aw){ ah2=max(abs(ah),1) aw2=max(abs(aw),1) if((0<=ah)&&(0<=aw)){t1=ah2*100/aw2 t2=0 }elsif((0<=ah)&&(aw<0)){t1=aw2*100/ah2 t2=90 }elsif((ah<0)&&(aw<0)){t1=ah2*100/aw2 t2=180 }else{t1=aw2*100/ah2 t2=270 } if(t1<=19){re=t2 }elsif(t1<=62){re=t2+22 }elsif(t1<=148){re=t2+45 }elsif(t1<=470){re=t2+67 }else{re=t2+90 } return re }
404 :非通知さん@アプリ起動中 :2005/09/07(水) 18:22:27 ID:TkLTmIxMO >>402 君は高校生かい? ちなみに俺は浪人生 _| ̄|〇 このスレには俺等しかいない気がする…
405 :非通知さん@アプリ起動中 :2005/09/07(水) 19:11:21 ID:zNOr3uv80 >>404 です。 ほうw勉強がんばって! 俺もそう思う。俺自身携帯basicのサイトみるまで(スレ以前に)この板を知らなかったorz ひっそり活動するっぺさ。
406 :非通知さん@アプリ起動中 :2005/09/07(水) 19:24:48 ID:10NUD7A8O 昔シューティング作ろうと思って作ったこっちに弾撃ってくるプログラム。よく考えればatan無くてもできる。 label 2A=B=-20C=abs(rand)%100+16D=abs(rand)%90+16H=rand%5I=rand%5if(!H){H=2}if(!I){I=-3}X=64Y=120label 0lock()col(0)frect(0,0,132,144)if(abs(X-C)<16&&abs(Y-D)<16){goto 1}G=scan if(G==16384&&X<121){X=X+4}if(G==8192&&X>8){X=X-4}if(G==4096&&Y>8){Y=Y-4}if(G==32768&&Y<133){Y=Y+4}if(G==2){end}C=C+H D=D+I if(abs(66-C)>57){H=-H}if(abs(72-D)>63){I=-I}col(0xFFFFFF)frect(X-8,Y-8,16,16)col(255)frect(C-8,D-8,16,16)if(abs(66-A/5)>66||abs(72-B/5)>72){A=C*5B=D*5E=(X*5-A)/((abs(X*5-A)+abs(Y*5-B))/20)F=20-abs(E) if(Y-B/5<0){F=-F}}else{A=A+E B=B+F col(0xFF8000)frect(A/5-1,B/5-1,3,3)if(abs(X-A/5)<9&&abs(Y-B/5)<9){goto 1}}unlock(1)goto 0label 1unlock(1)col(255<<16)text("GAMEOVER",42,66,32)input(100)goto 2
407 :非通知さん@アプリ起動中 :2005/09/07(水) 20:11:25 ID:TkLTmIxMO G==は G&に したほうがいいと思うが‥どうだ?
408 :非通知さん@アプリ起動中 :2005/09/07(水) 20:14:37 ID:TkLTmIxMO それにしても中々のできGJ!!
409 :非通知さん@アプリ起動中 :2005/09/07(水) 20:25:26 ID:zNOr3uv80 >>406 意味の理解にしばらくかかったorz。 総移動距離中の横の割合を求めて、それを4倍[px]。それで残りの分を縦の移動速度 ってことですね。 うあーっ インチキ座標系っぽいのにちゃんと見える!すげぇ!!そして3人目だわーい >>407 やっぱ斜め移動で速度1.4倍が熱いよね(違う 上下移動の画面はみ出し防止判定って、 やっぱキー入力と次の移動で出ないかのandとるべきですか? キー判定の後はみだしぶん押し込める ってやってるけど・・・
410 :非通知さん@アプリ起動中 :2005/09/07(水) 22:04:34 ID:TkLTmIxMO はみ出し防止判定って何?てかドットの粕みたいなもの?
411 :非通知さん@アプリ起動中 :2005/09/07(水) 22:09:40 ID:zNOr3uv80 >>410 x、y、横幅、縦幅を持つ矩形の判定が、一定領域から出ないようにするときのチェック。 自機が画面からはみ出さないようにする処理。同じく、弾がはみ出たかどうか判定する処理。 移動後にはみ出てたら座標を戻す方法か、移動したらはみ出るかどうかをチェックしてから移動する方法か迷う。
412 :非通知さん@アプリ起動中 :2005/09/07(水) 22:13:44 ID:TkLTmIxMO そこまで玉が飛ばないようにすればいいんじゃねぇww?
413 :非通知さん@アプリ起動中 :2005/09/07(水) 22:29:19 ID:zNOr3uv80 >>412 その処理のやり方だよw @ if(x+vx>w){ die() }else{ x=x+vx } A x=x+vx if(x>w){ die() } どっちがよいのか・・・んで、さらに、カーソルキーで操作する処理になると @ if( 『右が押されている』 ){ if(x+vx>w){ die() }else{ x=x+vx } } A if( 『右が押されている』 ){ x=x+vx } if(x>w){ die() } どっちが軽いのか。もっと重要な軽量化部分もあるかもしれんが。
414 :非通知さん@アプリ起動中 :2005/09/07(水) 22:46:40 ID:TkLTmIxMO elseって意外に重いんじゃねぇの?
415 :非通知さん@アプリ起動中 :2005/09/07(水) 23:27:39 ID:5LpOmhVj0 最初のは (x=x+xv)>w&&die(); 次のは (『右が押されている』&&x=x+vx,x>w)&&die(); てやればそこそこ軽い。更にこれをどっかの式に影響無く含めるとより軽い。
416 :非通知さん@アプリ起動中 :2005/09/07(水) 23:40:55 ID:TkLTmIxMO >>415 みたく比較式にしたほうがいいぜ!
417 :非通知さん@アプリ起動中 :2005/09/08(木) 00:52:46 ID:zeKLAX2BP 俺なら、 x = x + (([右押] & (x < [右端])) - ([左押] & (x > [左端]))) * [移動量] を毎回のループに入れるな。 &は*のが軽いならそっちで。 毎回の計算量が一定=フレームレートがばらつかないという利点もある。 行きすぎたら押し戻すやり方は、移動量が変動する場合に意味があるな。
418 :非通知さん@アプリ起動中 :2005/09/08(木) 17:43:58 ID:Xd8uak970 >>415 >>417 最初、へ?と思ったが・・・・ すげえええええっ 比較式にしてスルーさせるのか! これ他の言語でも仕様しだいで使えそうだ。勉強になるぅー。ありがとうございます。 次の作品に活用してみようと思いまっすっすすすす blib て名前で保存してください @ func at32(ah,aw){ ah2=max(abs(ah),1) aw2=max(abs(aw),1) if((0<=ah)&&(0<=aw)){t1=ah2*100/aw2 t2=0}elsif((0<=ah)&&(aw<0)){t1=aw2*100/ah2 t2=90}elsif((ah<0)&&(aw<0)){t1=ah2*100/aw2 t2=180}else{t1=aw2*100/ah2 t2=270} if(t1<=9){re=t2}elsif(t1<=29){re=t2+11}elsif(t1<=51){re=t2+22}elsif(t1<=78){re=t2+33}elsif(t1<=119){re=t2+45}elsif(t1<=173){re=t2+56}elsif(t1<=290){re=t2+67}elsif(t1<=814){re=t2+78}else{re=t2+90 } return re} func make(an,ax,ay,avx,avy){ re=-1 for(ii=0;ii<B;ii++){if(bn[ii]==0){bn[ii]=an bx[ii]=ax by[ii]=ay bvx[ii]=avx bvy[ii]=avy)re=ii break}}return re } func die(ai){ bn[ai]=0 bx[ai]=0 by[ai]=0 bvx[ai]=0 bvy[ai]=0 bc[ai]=0 bi[ai]=0 } func gfar(){ switch(abs(rand)%4){case 0: tmx=abs(rand)%(W*10-S) tmy=-S break; case 1: tmx=abs(rand)%(W*10-S) tmy=H*10 break; case 2: tmy=abs(rand)%(H*10-S) tmx=-S break; case 3: tmy=abs(rand)%(H*10-S) tmx=W*10 break;} R[0]=tmx R[1]=tmy }
419 :非通知さん@アプリ起動中 :2005/09/08(木) 17:44:58 ID:Xd8uak970 blib 2 func shot0100(){ gfar() tmi=make(1,R[0],R[1],0,0) tma=at32(my-by[tmi],mx-bx[tmi]) bvx[tmi]=cos(tma)*D*5/100 bvy[tmi]=sin(tma)*D*5/100 bc[tmi]=0xDD5555 } func shot0101(ax,ay){ tmi=make(1,ax,ay,0,0) tma=at32(my-by[tmi],mx-bx[tmi]) bvx[tmi]=cos(tma)*D*10/100 bvy[tmi]=sin(tma)*D*10/100 bc[tmi]=0xAA44AA } func shot0102(ax,ay){ tmi=make(1,ax,ay,0,0) tma=at32(my-by[tmi],mx-bx[tmi]) bvx[tmi]=cos(tma-20)*D*7/100 bvy[tmi]=sin(tma-20)*D*7/100 bc[tmi]=0xCC8844 tmi=make(1,ax,ay,0,0) bvx[tmi]=cos(tma+20)*D*7/100 bvy[tmi]=sin(tma+20)*D*7/100 bc[tmi]=0xCC8844} func shot0103(ax,ay){ tmi=make(1,ax,ay,0,0) tma=at32(my-by[tmi],mx-bx[tmi]) bvx[tmi]=cos(tma-30)*D*6/100 bvy[tmi]=sin(tma-30)*D*6/100 bc[tmi]=0xAAAA44 tmi=make(1,ax,ay,0,0) bvx[tmi]=cos(tma)*D*6/100 bvy[tmi]=sin(tma)*D*6/100 bc[tmi]=0xAAAA44 tmi=make(1,ax,ay,0,0) bvx[tmi]=cos(tma+30)*D*6/100 bvy[tmi]=sin(tma+30)*D*6/100 bc[tmi]=0xAAAA44 } func shot0200(){ gfar() tmi=make(2,R[0],R[1],0,0) tma=at32(my-by[tmi],mx-bx[tmi]) bvx[tmi]=cos(tma)*D*4/100 bvy[tmi]=sin(tma)*D*4/100 bc[tmi]=0x5555DD } func shot0300(){ gfar() tmi=make(3,R[0],R[1],0,0) tma=at32(my-by[tmi],mx-bx[tmi]) bvx[tmi]=cos(tma)*D*3/100 bvy[tmi]=sin(tma)*D*3/100 bc[tmi]=0x44AAAA } func shot0400(){ gfar() tmi=make(4,R[0],R[1],0,0) tma=at32(my-by[tmi],mx-bx[tmi]) bvx[tmi]=cos(tma)*D*2/100 bvy[tmi]=sin(tma)*D*2/100 bc[tmi]=0x55DD55 }
420 :非通知さん@アプリ起動中 :2005/09/08(木) 17:46:12 ID:Xd8uak970 blib 3 汚いソースだ goto "esc" label m0 return label m1 bx[i]=bx[i]+bvx[i] by[i]=by[i]+bvy[i] if((bx[i]<-S)||(by[i]<-S)||(bx[i]>W*10)||(by[i]>H*10)){die(i)} gosub 444 return label m2 bx[i]=bx[i]+bvx[i] by[i]=by[i]+bvy[i] bi[i]=bi[i]+D l=150 if(l<=bi[i] && bi[i]<l+D){shot0101(bx[i],by[i]) die(i)} if((bx[i]<-S)||(by[i]<-S)||(bx[i]>W*10)||(by[i]>H*10)){die(i)} gosub 444 return label m3 bx[i]=bx[i]+bvx[i] by[i]=by[i]+bvy[i] bi[i]=bi[i]+D l=250 if(l<=bi[i] && bi[i]<l+D){shot0102(bx[i],by[i]) die(i)} if((bx[i]<-S)||(by[i]<-S)||(bx[i]>W*10)||(by[i]>H*10)){die(i)} gosub 444 return label m4 bx[i]=bx[i]+bvx[i] by[i]=by[i]+bvy[i] bi[i]=bi[i]+D l=350 if(l<=bi[i] && bi[i]<l+D){shot0103(bx[i],by[i]) die(i)} if((bx[i]<-S)||(by[i]<-S)||(bx[i]>W*10)||(by[i]>H*10)){die(i)} gosub 444 return label 444 if((bx[i]<mx+S)&&(by[i]<my+S)&&(bx[i]+S>mx)&&(by[i]+S>my)){O=1} return label esc
421 :非通知さん@アプリ起動中 :2005/09/08(木) 17:49:31 ID:Xd8uak970 本体 (ファイル名はなんでも) label 2 #blib# soft2("Exit") W=width H=height S=100 D=10 M=80 B=12 C=0 E=50 P=0 O=0 mx=W*10/2 my=H*10/2 @(bac,0,0,0,0) for(i=0;i<B;i++){die(i) } label 0 omx=mx omy=my K=scan if(K & 262144){end} if((K & 4096)&&(0<(my-M))){my=my-M} if((K & 32768)&&((my+M)<H*10-S)){my=my+M} if((K & 8192)&&(0<(mx-M))){mx=mx-M} if((K & 16384)&&((mx+M)<W*10-S)){mx=mx+M} if((omx==mx)&&(omy==my)){P++} for(i=0;i<B;i++){gosub "m".bn[i]}if(O>0){goto 3}for(i=0;i<4;i++){bac[i]=bac[i]+abs(rand)%D} C++ if(C==E){C=0 D++ if(D==20){goto 506}} if(bac[0]>=100){shot0100() bac[0]=0 P=P+10}if(bac[1]>=150){shot0200() bac[1]=0 P=P+20}if(bac[2]>=250){shot0300() bac[2]=0 P=P+50}if(bac[3]>=400){shot0400() bac[3]=0 P=P+100} lock() col(0) frect(0,0,W,H)col(0xFFFFFF) rect(mx/10,my/10,S/10,S/10)for(i=0;i<B;i++){if(bn[i]>0){ col(bc[i]) rect(bx[i]/10,by[i]/10,S/10,S/10) }} col(0xFFFFFF)text("レベル".(D-9)."/10",W-10,10,24) text("スコア".P,W-10,30,24) rect(10,10,E*2,10) frect(10,10,C*2,10) unlock(0) goto 0 label 3 K=scan if(K & 262144){end}if(K & 65536){goto 2} lock() col(0) frect(0,0,W,H)col(0xFFFFFF) rect(mx/10,my/10,S/10,S/10) for(i=0;i<B;i++){if(bn[i]>0){ col(bc[i]) rect(bx[i]/10,by[i]/10,S/10,S/10) }} col(0xFFFFFF)text("レベル".(D-9)."/10",W-10,10,24) text("スコア".P,W-10,30,24)text("ゲームオーバー",10,30,20) unlock(0) goto 3 label 506 K=scan if(K & 262144){end}if(K & 65536){goto 2} lock() col(0) frect(0,0,W,H)col(0xFFFFFF) rect(mx/10,my/10,S/10,S/10)for(i=0;i<B;i++){if(bn[i]>0){ col(bc[i]) rect(bx[i]/10,by[i]/10,S/10,S/10) }} col(0xFFFFFF)text("CLEAR!",W-10,10,24) text("スコア".P,W-10,30,24)text("おめでとう!",10,30,20) unlock(0) goto 506
422 :非通知さん@アプリ起動中 :2005/09/08(木) 17:53:22 ID:Xd8uak970 がんばってクリアしてみてください。FPS2ぐらいな悪寒がしますが、なんとか操作してwwww 速度の話してるわりにはなんじゃこの無駄は!と 思う人もいると思いますが、 はやく遊びたかった&公開したかった ので すいません。 高速化はあとまわ(死) 自作アークたんは32方向にグレードアップ。 しかし、パソコンに送ってみたら気付いた。なんだこのテキスト量・・・携帯ってけっこうパワーあるんだな・・・
423 :非通知さん@アプリ起動中 :2005/09/08(木) 23:03:37 ID:c7AOWVYmO 糞オソスwwwでもアイディアとしてはいいね! いきなり分裂するアークとか、いきなりスピードアップする奴とか結構面白いが、サクサクできないのが難点か‥
424 :非通知さん@アプリ起動中 :2005/09/09(金) 00:34:13 ID:jWPWto3N0 遅いでしょwwwwけっこう面白い嬉しすww 静止中はスコアが貰えるので狙ってみてくださいな。俺クリアできないけど。 B=12ってところを減らすと圧倒的に早くなるんだけど、これ最大弾数なんだよね・・・w
425 :非通知さん@アプリ起動中 :2005/09/09(金) 00:39:35 ID:B8BlQgdMO 確かにwwBをこれ以上増やしたらoutofmemoryが出ちまいそうだもんなwwwちなみレベルは8迄いった
426 :非通知さん@アプリ起動中 :2005/09/09(金) 00:51:12 ID:jWPWto3N0 >>425 うむww出なくても鬼スローwwおwあとちょっとでクリア! 2Way+3Wayではさまれたところに高速がくると死ねる
427 :非通知さん@アプリ起動中 :2005/09/09(金) 01:01:26 ID:B8BlQgdMO 俺の単純ミスはww自キャラ見失ってワロス(^Д^) という教訓をもとに自キャラはfrectにしたWW 俺もなんか作ろうかな‥
428 :非通知さん@アプリ起動中 :2005/09/09(金) 17:24:12 ID:jWPWto3N0 確かに見失うかもw おー 作りましょうーw スレに活気を。そしてネタがない。
429 :非通知さん@アプリ起動中 :2005/09/09(金) 18:13:18 ID:B8BlQgdMO ヒント:爆弾ww
430 :非通知さん@アプリ起動中 :2005/09/09(金) 20:01:47 ID:jWPWto3N0 >>429 ふむ なんか考えてみる
431 :非通知さん@アプリ起動中 :2005/09/12(月) 16:38:00 ID:mCA0aJ1hO プログラム来い!
432 :非通知さん@アプリ起動中 :2005/09/12(月) 17:14:39 ID:mCA0aJ1hO 第2回プログラムコンテスト! ・SPALMもしくはBASICシリーズでのプログラムのコンテストをします。 ・今回のお題はマリオ型アクションゲーム。ブロックの中を進んでいくタイプならOK ・プログラムはKURIさんのところのアップ板かここに書き込んで投稿。できればKURIさんのとこが間違いがないのでそっちにアップして欲しい。 ・期限は2週間後。がんばって作ろう
433 :非通知さん@アプリ起動中 :2005/09/13(火) 22:33:42 ID:yK9Tr/+k0 >>432 お 爆弾思いつかないところに。 ・・・壁の多いテーマだ がんばろう
434 :非通知さん@アプリ起動中 :2005/09/14(水) 07:58:18 ID:UH3kSmRgO ここまでできたぞ!マップ切り替え型で行くことにした。 H=8makeimg(B,128,128)for(;I<H;I++){makeimg(B[I],16,128)trgt(B[I])for(i=0;i<8;i++){if(M[I+i*H]='!abs(rand%4)'strat("0000000000001110000100000010000010000000010000000000010011111111",I+i*H)){frect(0,i<<4,16,16)}}} gc()trgt(B)for(i=0;i<8;i++){drawimg(B[i],i<<4,0,0)}trgt(off)soft1("EXIT")label 0lock()if(16==A=scan>>13 ){end}(j||t=0)&&++t>8&&t=j=0;drawimg(B,0,0,0)col(255<<16)x=X>>4 y=Y>>4 frect(X=X+(((A&2)&&(X%16||!M[x+1+y*H]&&(Y%16==0||!M[x+1+H+y*H])))-((A&1)&&X>0&&(X%16||!M[x-1+y*H]&&(Y%16==0||!M[x-1+H+y*H]))))*4,(x=X>>4 ,Y=Y+(J=(!j&&112>Y&&(Y%16||!M[x+y*H+H]&&(X%16==0||!M[x+y*H+H+1]))))*4 -(j=(!J&&(A&8)&&Y%16||!M[x+y*H-H]&&(X%16==0||!M[x+y*H-H+1])))*4),16,16)unlock(1)goto 0
435 :非通知さん@アプリ起動中 :2005/09/15(木) 17:10:25 ID:n51eXeG10 >>434 すげー。なんだこの軽さ。しかもほとんどの構文が論理式だけで書いてあって解読無理す。レベル高いな・・・。 どうやってもこの処理速度に勝てないから、部分再描画式にしてなんとか速度うp 地形当たり判定はまだ作ってない。そしてマップ切り替え被ったw どーすればおもしろいか考え中。そもそもマリオってどこが面白いのか文にできん。
436 :434 ◆0F0cprE/F2 :2005/09/16(金) 17:44:55 ID:hhK3Dzbe0 なんとかマップ切り替えとか、敵の処理とかまで出来たけどさすがにちょっと遅くなってきた…。 あとはボスとステージデータと画像だな。データ量の割にはすぐにクリアできてしまうかもしれないので、 色々考える必要がありそうだ。うぅ…頭イタイ、、、
437 :ヒマな静観派 :2005/09/16(金) 19:20:30 ID:DEuxO6wTO >>422 今更だが弾幕おもしろい。携帯では動きそうにないからPCで見たが確かにかなり長いソースで軽く5kバイト越えてた。 そんでスコープごとにタブ入れたりreturnに;つけたりしてみたら、なんだこれ… まるでPC用のプログラム。これが携帯で動くのだから最近の携帯の性能には驚かされる。 atanもよくできていてPCのエミュで動かしたらちょうどいいスピードで軽くハマった。422氏のこれからが楽しみになった。 422氏のように用意された文を駆使する人もいるかと思えば434氏のように大半を演算子で作って最低限の命令に抑える人もいてプログラマの個性があるのは見てておもしろい。 これからもこのスレでいろいろな特徴あるプログラマ(キャラ)が生まれて欲しいと思う今日この頃…
438 :非通知さん@アプリ起動中 :2005/09/17(土) 07:54:54 ID:ZQoZZCINO やっとこのスレ見つけた… 昔はよくプログラム組んで書き込んだものだ。ぐるぐるとかMultiSAVEとか…
439 :435=422 :2005/09/17(土) 14:51:00 ID:bTDx+bVt0 >>436 ボス、敵って!マジすか。マップ処理と移動だけでゲームにするつもりですwwww >>437 うほ。反応嬉しい。 今作で演算子構文しようとしてるんですが、判定がもーいみわからん 結局ifと&&がごちゃごちゃになってますw >>438 >>432 コンテスト中らしいです。参加しませう! >>ALL 画面サイズって、自分の携帯にいっぱいいっぱいで作っていいん? P900ivなんだけど、みんな503対応で作ってる人多いですよね?
440 :非通知さん@アプリ起動中 :2005/09/17(土) 14:58:32 ID:Nt7qQkiyO 安心しろ。俺なんてP901iだ!
441 :非通知さん@アプリ起動中 :2005/09/17(土) 15:08:00 ID:Nt7qQkiyO ちなみにheight、widthを使いながら書くと互換性が生まれる… って知ってるかwwとりあえず俺はスクロール型を作るわ
442 :434 ◆M6oBIgZ1IU :2005/09/17(土) 17:33:30 ID:/Mx4qoaDO ステージ2までしかないけどマリオできたからやってみて ttp://park21.wakwak.com/~kuri/cgi-bin/pbbs.cgi?mode=list&page=0 速い機種なら最高だろう。
443 :422 ◆9fLecX9sq2 :2005/09/17(土) 18:41:00 ID:bTDx+bVt0 >>440 おぉ 一個上でつか height widthは>>422 で使ったけど、 マップの当たり判定は拡大縮小すると、小数部分で誤差がでそうなのでやらなかった。 自機の判定、ピクセルですよwwwwwww スクロールかー。すごいなぁ。あのー、タイルが半分だけでる時とかの処理を想像してやめたというw >>442 うおぉぉぉ 軽さが驚異的だ・・・ しかも踏む処理orz すごすぎる。 難易度も、クリアがおもろいぐらいでお手ごろ!
444 :434 :2005/09/17(土) 20:44:42 ID:/Mx4qoaDO 今見て気づいたけどステージ少なくなかった…?直しといたんでヨロ
445 :非通知さん@アプリ起動中 :2005/09/17(土) 21:04:03 ID:Nt7qQkiyO >あのー、タイルが半分だけでる時とかの処理を想像してやめたというw substrで一つ先のマップチップを読み込ませることで平気でない?
446 :非通知さん@アプリ起動中 :2005/09/17(土) 21:56:31 ID:bTDx+bVt0 >>444 あ なんか話と食い違うと思ったらそういうことか。地上と地下だっ! むむむ。この少ないデータ量で請ったマップを・・・ 全部罠にはまったぜwww 読み込み画面をうまく使ってるなー。。。 クリア後に和みな雰囲気の楽しさが。いいねこれ。 >>445 戻りも考えると、両端に一個多く読むだけか?そういわれると簡単な気も・・・ でも、改行のない配列で、ある列だけを各行から読むってのが難しそう・・・ 3連休は「ちまっとした暇」がないから携帯プログラミングはしない俺www
447 :434 :2005/09/17(土) 22:48:26 ID:/Mx4qoaDO 自分的には2面の3マップ目で上からクリアする方法と4マップ目で敵を踏んでクリアするところがアクションぽくて好き まあ、厳しいけどもうちょい高速化してみる
448 :422 ◆9fLecX9sq2 :2005/09/17(土) 23:13:24 ID:bTDx+bVt0 せっかくトリップつけたのにいきなり名前書き忘れたw 2-3上から行けたのか!今5回ぐらい挑戦してやっとできたw 上から行くと楽じゃのう。 高速化がんばってください。あと敵の動きが不思議。落下と往復だけなのに、トリッキーに見える。
449 :非通知さん@アプリ起動中 :2005/09/18(日) 10:07:47 ID:hl77RmdsO お題とは違うけど、SPALM習作、MultiSAVE移植版 一元配列でSAVEで複数保存を可能にする。 保存したい内容をMS[i]に代入した後、MS([保存要素数])呼び出し。 読込はML()で。保存されている要素数が帰り値になってる。保存内容がML[i]に格納されている 携帯B+より格段に早くなってるなぁ… MultiSAVE t=tick;@(MS,"000","111","222","333") MS(4) n=ML() for(i=0;i<n;i++){text(ML[i],20,12*i+12,3)} text(tick-t."msec",50,24,0);input();end func MS(MN){mf=MS[0].",";for(i=1;i<MN;i++){mf=mf.MS[i].","};save(mf)} func ML(){ls=load();tn=strlen(ls);bn=-1;bfi=-1; for(i=0;i<tn;i++){if(strat(ls,i)==","){bn=bn+1;ML[bn]=substr(ls,bfi+1,i-bfi-1);bfi=i}} return bn+1}
450 :434 ◆0F0cprE/F2 :2005/09/18(日) 22:43:36 ID:df996K5/0 >>448 やっぱ高速化無理でした…。 変わりにクッパステージを増やしてクッパも作ったがあんまおもろくならなかったから 俺の作品はアップ版にあるやつで完成ということで >>449 セミコロンは出来るだけ使わないで式も簡単にすればまだまだ高速化できる。 bn=-1;bfi=-1;は、、、 bn=bfi=-1 bn=bn+1;は、、、 bn++とか そしてアクションを作って!
451 :非通知さん@アプリ起動中 :2005/09/18(日) 23:17:00 ID:hl77RmdsO >>450 アクションって何ですか? あと、>>と~の使い方もよくわからないとです… ご教授願います
452 :434 ◆0F0cprE/F2 :2005/09/19(月) 00:19:20 ID:SD8bsonqO >>451 今プログラムコンテストのお題がマリオ型アクションだからさ。 >>と~はビット演算だからそれを理解すればいい。 コンピュータは2進で数字を表現してる。そしてSPALMでは32BITの数値を扱えるわけで… 00000000000000000000000000000001 1の時はこうなってるが>>1 すると各BITが右に一個ズレて全部0になる。これを10進で書くと 1/2=0 てこと ~はBITの0と1が反転するから 1111111…0となって-2になる。 後は自分で調べな
453 :非通知さん@アプリ起動中 :2005/09/19(月) 23:22:23 ID:/e8lHYoEO おまいらsubstr(a1,a2,a3)で a3を抜かすと最初から全部読み込むはずなのに、読み込まないような伎ガスるんだが、こんなの俺だけか?
454 :非通知さん@アプリ起動中 :2005/09/19(月) 23:23:55 ID:/e8lHYoEO 間違えだ a2から最後までだった
455 :434 ◆0F0cprE/F2 :2005/09/21(水) 00:12:15 ID:HoSkG3CyO ていうかみんなゲーム作ってんの?俺はそれが気になってしょうがないんだが…
456 :422 ◆9fLecX9sq2 :2005/09/21(水) 16:59:40 ID:5iJUFiyh0 >>455 俺は作ってるよ。マップ生成と当たり判定、移動(ジャンプも) までできた。 これからゲーム要素を突っ込めば完成。3連休に仕上げようと。
457 :434 ◆0F0cprE/F2 :2005/09/21(水) 18:04:30 ID:1Y1GWDr+0 解した
458 :非通知さん@アプリ起動中 :2005/09/21(水) 22:54:16 ID:otzf/LixO キー入力がうまく行かない… input()とscanの使い方教えて下さい 携帯BASICと変わりすぎてて分かんない @(a,"赤","青","緑","黄","愛","友情","青春","季節") label 0 clear(0,0,width,12) b=abs(rand)%4 b2=abs(rand)%4+4 c=abs(rand)%101 text(a[b]."色の".a[b2].c."パーセント",0,0,0) if(input()==1){exit}endif goto 0
459 :422 ◆9fLecX9sq2 :2005/09/21(水) 23:29:12 ID:5iJUFiyh0 俺も違いは良く知らんけど K=scan if(K and 1){ ' おされとるがな! ' } みたいにキーコードとandして、Trueなら押されてるってことになるよ キーコードのor値が入ってるから、==だと同時押しがウムムな結果に。
460 :434 ◆0F0cprE/F2 :2005/09/22(木) 07:26:41 ID:wjLTk403O inputとscanの違いはこれでわかるはず。 while(scan!=1){lock()clear(0,0,60,50)text(input(0),0,0,0)text(scan,0,16,0)unlock(1)} 0キーで終了ね
461 :非通知さん@アプリ起動中 :2005/09/22(木) 08:29:35 ID:1EnXY0e5O お二方ありがとうございました おかげでなんとかキー取得出来るようになりました exit命令がendになってるのに気づかなかった… あと、SPALMは二つのキー取得が簡単にできますね @(a,"赤","青","緑","黄","愛","友情","青春","季節") label 0 b=abs(rand)%4 b2=abs(rand)%4+4 c=abs(rand)%101 text(a[b]."色の".a[b2].c."パーセント!",0,0,0) if(scan!=1){lock()text("キーバッファ".input(0),0,50,0)unlock(1)text("スキャン".scan,0,66,0)}else{end}endif input() clear(0,0,width,100) goto 0 また分からない時はご教授願います
462 :非通知さん@アプリ起動中 :2005/09/22(木) 18:46:14 ID:1EnXY0e5O @()命令でかなり使いやすいね でももしかして@(a[0],0,1,2,3,4) とかのインデックス付き変数は入れられないのかな 上の例でいえばb=a[0][2]でbに2が代入されるような事ができなかったんですが(;´Д`)
463 :422 ◆9fLecX9sq2 :2005/09/22(木) 19:06:34 ID:v/DykF1L0 >>462 ポインタとかの参照型が無いみたいだから、二次元配列も使えないんじゃね? 俺もそれは困った。マップで・・・
464 :非通知さん@アプリ起動中 :2005/09/22(木) 20:26:34 ID:wjLTk403O できるよ。copyでも
465 :非通知さん@アプリ起動中 :2005/09/23(金) 08:23:29 ID:puoa5XWWO funcについてなんですが func ****(a,b){a++ b++} と func ****(){a++ b++} では何が違ってくるんですか? 引数ってよくわからない… 関数名([引数])から勉強しなおすべきなのか copy()使ったけどやはり無理みたいです…。 copy(a1,a2,a3,a4,a5)のa5もわからない… 読み込みたいのはこれ↓ 'キャラ @(a[0],(´∀`),モナー,2,2) @(a[1],(´・ω・`),ショボーン,5,2) @(a[2],(・∀・),ジエン,0,2) '出撃設定 @(b,0,2) 'ユニット枠読込 for(u=0;u<2;u++){for(s=0;s<3;s++){c[u][s]=a[b[u]][s]text(c[u][s],u*60,s*16,0)}}
466 :非通知さん@アプリ起動中 :2005/09/23(金) 09:37:55 ID:NcvkcBvZO >>465 (a,b)の所に(2,3)と代入したとする、{a++ b++}が2++3++となる copyは一回ぐらいしか使ったことないから分からない。
467 :434 ◆0F0cprE/F2 :2005/09/23(金) 10:13:47 ID:PprA8KFqO func A(a,b){a++b++} はA(5,8)と呼び出したとするとaに5、bに8が代入されa++b++でaという変数は6に、bという変数は9になる。 copy(A[0],2,B,0,9) これはA[0][2]からA[0][10]までの値をB[0]からB[8]までにコピーすること 'キャラ' @(a[0],"(´∀`)","モナー",2,2) @(a[1],"(´・ω・`)","ショボーン",5,2) @(a[2],"(・∀・)","ジエン",0,2) '出撃設定' @(b,0,2) 'ユニット枠読込' for(u=0;u<2;u++){ for(s=0;s<3;s++){ text(c[u][s]=a[u*2][s],u*60,s*16,0) } }でいけるかと思ったがだめだね
468 :422 ◆9fLecX9sq2 :2005/09/23(金) 16:09:47 ID:KqsvaPwN0 メモリを仮想的に作ってみればいいと思った。 @(all,"(´∀`)","モナー",2,2,"(´・ω・`)","ショボーン",5,2,"(・∀・)","ジエン ",0,2) @(pos,0,4,8) for(u=0;u<3;u++){for(s=0;s<4;s++){ cell=all[pos[u]+s] text(cell,u*70,s*16,0) }} input() 動作したけど、コレじゃダメ? あと、引数ってのは、その関数の中でのその変数の値をきめられる。 ただし、funcが定義された位置(つまりfuncの外全部)でa、bを初期化してる場合、引数が来ないときは、 関数からa、bを参照できるから、結果的に同じことになっちゃうだけ。 ようは、func foo(a,b){}の中での、a、bは、fooの中のローカル変数で、外部からは参照できないのに対して、(読み込まれるのはfooの外のa、b) func foo2(){}の中から、a、bを参照した場合は、foo2の外のローカル変数だから、変更すれば外部から参照したとき変更されてる。 ってのが一般的な考え方・・・かな?
469 :非通知さん@アプリ起動中 :2005/09/23(金) 17:53:59 ID:puoa5XWWO 皆さん丁寧にありがとうm(__)m @(CH,"ガンダム",130,12,7,30,1,"ガンキャノン",135,15,1,22,2,"ガンタンク",140,10,1,8,3,"ジム",100,8,0,18,1,"コアファイター",50,4,5,40,2,"コアブースター",80,5,1,48,2,"ガンダムMC",150,17,10,40,1, "ザクI",60,10,0,18,1,"ザクII",80,10,0,20,2,"ザクIIS",130,13,7,40,1,"グフ",115,11,0,23,2,"ドム",135,12,0,33,2,"リックドム",130,12,1,34,2,"ギャン",130,15,0,35,1, "ゲルググ",120,10,0,35,2,"エルメス",140,5,10,30,4,"ジオング",180,14,10,38,3,"ズゴックS",120,10,8,30,2,"ゲルググS",135,10,9,35,2,"ビグ・ザム",200,9,0,18,4)
470 :非通知さん@アプリ起動中 :2005/09/23(金) 17:58:56 ID:puoa5XWWO @(ST,0,1,2,3,9,10,11,17,18,19) soft1("")soft2("QUIT") text("機体名",0,0,0)text("耐久力",0,12,0)text("攻撃力",0,24,0)text("NT値",0,36,0)text("機動力",0,48,0)text("射程",6,60,0) label 0lock()clear(42,0,100,100)for(LL=0;LL<6;LL++){text(CH[(ST[L])*6+LL],42,12*LL,0)}unlock(1)input()if(scan==16384&L<9){L++}elsif(scan==8192&0<L){L--}elsif(scan==262144){end}goto 0 読み込みは無事成功しました 関数も詳しい解説ありがとうございます あとは頑張ってゲームになるよう頑張ります
471 :422 ◆9fLecX9sq2 :2005/09/23(金) 18:13:37 ID:KqsvaPwN0 >>470 おぉ〜。うまくいってよかったっす。がんばってー!
472 :非通知さん@アプリ起動中 :2005/09/26(月) 19:01:38 ID:G4oh3aOXO @(A[0],0,1,2,3,4,5) 二次元配列使えるようになったっぽい? まだ試してないけど作者GJ!
473 :非通知さん@アプリ起動中 :2005/09/26(月) 22:22:49 ID:G4oh3aOXO switchについて質問があります switch(A[B][C]){ case 1|3:D[B][C]="はずれ"break; case 2:D[B][C]="正解"break;} switchの条件式は変数の中身を見るだけでも成立する? caseの数値はorしてもいい? defaultはなくてもいい? switchの効果的な使い方とは? どなたか解説お願いします
474 :434 ◆0F0cprE/F2 :2005/09/27(火) 00:10:45 ID:5oFY2BfEO >switchの条件式は変数の中身を見るだけでも成立する? 変数一つでもそれは式なので成立する。 >caseの数値はorしてもいい? caseで使える値は数値単体か文字列単体のみ、演算はできない。 >defaultはなくてもいい? OK >switchの効果的な使い方とは? if-elseでいくつもの数値などと比較するよりはテーブルジャンプしてるswitchの方が速い。 というだけなので使いどころは少ないかもしれない。
475 :非通知さん@アプリ起動中 :2005/09/27(火) 12:06:45 ID:wpWDg69GO ありがとうございますー orが使えないのは残念だけど高速実行というのはいいなあ こないだのデータ読み込みと同じように、必要な画像データだけ読み出すルーチンを作ってるんで 時間短縮になりそうでいいですね …今思いついたけどcaseはbreakしないと次も実行してしまうって事は case 1:; case 3:命令 break; とかは使えますか?orのかわりにはなりそう…
476 :434 ◆0F0cprE/F2 :2005/09/27(火) 18:09:01 ID:5oFY2BfEO case 1: case 3: … break; ていうのはあり。switch文てJAVAとかでもそういう命令だからね。
477 :非通知さん@アプリ起動中 :2005/09/27(火) 18:17:42 ID:wpWDg69GO おー、やっぱりそれでいけるんだ…どうもです case 1:のあとの;はいらないんですね(´・ω・`)breakにつけるのか…
478 :非通知さん@アプリ起動中 :2005/09/29(木) 11:48:33 ID:yQntGGCEO センターまでの残り時間わかるやつ作って。 秒単位でお願い。
479 :非通知さん@アプリ起動中 :2005/09/29(木) 15:02:53 ID:pckcZ8E9O まだ時間関数拡張されてないからなぁ
480 :434 ◆0F0cprE/F2 :2005/09/30(金) 00:16:28 ID:FbjL0XQ7O そういえばプログラムコンテスト終わってたね…結局俺だけだったか。
481 :422 ◆9fLecX9sq2 :2005/09/30(金) 00:46:28 ID:Q+WsspiJ0 ほひょい 誰も触れないと思ったらw 最後の日月にこってり忘れて放置プレイ。 できてたところまで明日うpするわ。
482 :434 ◆0F0cprE/F2 :2005/09/30(金) 07:23:17 ID:FbjL0XQ7O タイトルのとこが空白でリンク開けなかったorz
483 :422 ◆9fLecX9sq2 :2005/09/30(金) 19:41:36 ID:Q+WsspiJ0 soft1("リセット") soft2("終了")mpw=20 mph=12 mps=12 mx=mps/2 my=mph/2*mps-mps/2 mjs=1 mjc=mjm=10 mep=0 mem=40 M=4 ang=1 AK=BK=CK=0 col(0xFF0000)frect(0,0,width,height) func hit(dx,dy){r=1 if((0<dy)&&(dy<mph*mps)&&(0<dx)&&(dx<mpw*mps)){i=dy/mps*mpw+dx/mps r=(!(strat(map,i)))}return r}func setchar(str,i,char){l=strlen(str) f=substr(str,0,i) e=substr(str,i+1) return f.char.e}func makemap(){map="1" for(i=0;i<mpw*mph;i++){if(abs(rand)%100<kpm){map=map."0"}else{map=map."1"}}cchip(mx,my,"1")for(i=0;i<mpw*mph;i++){col(0xFFFFFF*strat(map,i))frect(i%mpw*mps,i/mpw*mps,mps,mps)}}func dchip(dx,dy){i=dy/mps*mpw+dx/mps i=max(min(i,mpw*mph-1),0) col(0xFFFFFF*strat(map,i))frect(i%mpw*mps,i/mpw*mps,mps,mps)}func cchip(dx,dy,c){if((0<dy)&&(dy<mph*mps)&&(0<dx)&&(dx<mpw*mps)){i=dy/mps*mpw+dx/mps map=setchar(map,i,c) dchip(dx,dy)}} func s1(){cchip(mx,my-mps,"1")cchip(mx,my+mps,"1")cchip(mx+mps*ang,my,"1")}func s2(){cchip(mx,my-mps,"1")cchip(mx,my-mps*2,"1")cchip(mx,my-mps*3,"1")cchip(mx,my-mps*4,"1")cchip(mx,my+mps,"1")cchip(mx,my+mps*2,"1")cchip(mx,my+mps*3,"1")cchip(mx,my+mps*4,"1")}func s3(){cchip(mx+mps*ang,my,"1")cchip(mx+mps*2*ang,my,"1")cchip(mx+mps*3*ang,my,"1")cchip(mx+mps*4*ang,my,"1")cchip(mx+mps*5*ang,my,"1")cchip(mx+mps*6*ang,my,"1")cchip(mx-mps*ang,my,"1")cchip(mx-mps*2*ang,my,"1")} label 1 col(0xFF0000) frect(0,0,width,height) mx=mps/2 my=mph/2*mps-mps/2 mep=0 kpm=abs(rand)%40+20 makemap()
484 :422 ◆9fLecX9sq2 :2005/09/30(金) 19:44:07 ID:Q+WsspiJ0 label 0 omx=mx omy=my K=scan if(K & 262144){end}if(K & 131072){goto 1} if(((mjs==0))&&(!(hit(mx,my+M)))){mjs=1 mjc=mjm} if((mjs==1)&&(mjc==mjm)){if(!(hit(mx,my+M))){my=my+M}else{mjs=0 mjc=0}} ((mjs==0)&&(K & 4096)&&(mjs=1))>0 if((mjs==1)&&(mjc<mjm)){if((!(hit(mx,my-M)))&&(K & 4096)){my=my-M mjc++}else{mjc=mjm}} ((K & 8192)&&(! hit(mx-M,my))&&(mx=mx-M)&&(ang=-1))>0((K & 16384)&&(! hit(mx+M,my))&&(mx=mx+M)&&(ang=1))>0 if(K & 1024){AK++}else{AK=0}if(K & 1){BK++}else{BK=0}if(K & 2048){CK++}else{CK=0} if((AK==1)&&(mep>=mem)){s1() mep=mep-mem}if((BK==1)&&(mep>=mem*2)){s2() mep=mep-mem*2}if((CK==1)&&(mep>=mem*3)){s3() mep=mep-mem*3}if(mep<mem*3){mep++} lock()dchip(omx,omy)col(0x559999)frect(mx-2,my-2,4,4)col(0)frect(5,5+mph*mps,mep,10)col(0xFFFFFF)frect(5+mep,5+mph*mps,mem*3-mep,10)rect(5,5+mph*mps,mem,10)rect(5+mem,5+mph*mps,mem,10)rect(5+mem*2,5+mph*mps,mem,10)unlock(0) goto 0
485 :非通知さん@アプリ起動中 :2005/09/30(金) 19:57:55 ID:9oMZGZTz0 V3G対応マダー??チンチン
486 :非通知さん@アプリ起動中 :2005/09/30(金) 21:03:15 ID:pgosYn2/O ボオダなんかには対応せんだろDoCoMoが神なんだから
487 :434 ◆0F0cprE/F2 :2005/09/30(金) 22:50:05 ID:FbjL0XQ7O >>422 おー!なんだできてたんじゃないすか どっとアクションを彷彿とさせるようなつくりだぁ 期間終わったからって投げないで最後まで作ればおもしろいのができそうな希ガス
488 :422 ◆9fLecX9sq2 :2005/10/01(土) 17:11:45 ID:lprRUBFh0 うむ。できてたのだ。 落下死亡と、右端から次のマップロード と、あとタイムアタックつければゲームになりそうなのよね。 技の範囲と貯め時間の判断がアクションパズルっぽいかも 書き忘れてたけど、カーソルで移動と * 0 # で技ね
489 :434 ◆0F0cprE/F2 :2005/10/02(日) 09:22:40 ID:iL856TOsO 楽しみだね。 でもひとつ、iMonaから見てるからソース写すのがキツかった…2chにやるときはできれば一つカキコの文字数を減らしてほしい。 ちなみに1000文字が限界ぽい。そしてできればアップ板に投稿してほしかった。 そういえばアップ板にあったタイトルが空白のやつって422さん?
490 :422 ◆9fLecX9sq2 :2005/10/02(日) 15:31:46 ID:+Tzn1hte0 >>489 あーごめん。自分はパソで専ブラで見てから携帯に転送してるから、文字数は板の制限しか意識してなかった。 うむ。最初うp板使おうとしたらめちゃくちゃ重くて・・・ 中断して、あ 失敗したな。と思ってた。 今気付いたけどタイトルなしで投稿されてたのね。ブラウザじゃクリックできないから気付かなかった。orz
491 :非通知さん@アプリ起動中 :2005/10/05(水) 00:21:09 ID:LqWmWlu5O 次のプログラムコンテストのお題の難易度は上中下だとどれぐらいがいい?
492 :非通知さん@アプリ起動中 :2005/10/07(金) 22:45:00 ID:r6B05x5HO ローグライクがいいとおもわ(ry
493 :非通知さん@アプリ起動中 :2005/10/07(金) 23:05:36 ID:lfJTAXVmO マップ固定なら出来なくはなさそうだな ランダム生成を持ち出すとキリがない てかむしろそれはみんなでやるべきだ。 俺はアイテムや敵キャラ案なら出せるが。エンジン部分は頭の良い連中にパス
494 :非通知さん@アプリ起動中 :2005/10/07(金) 23:53:38 ID:r6B05x5HO ゴメンエンジン部分なら担当したい。
495 :非通知さん@アプリ起動中 :2005/10/08(土) 00:26:43 ID:YC9WlVrTO 誰か教えてくれランダムな数値をsubstrで読み込むときはどうすればいいの? AA=abs(rand)%2000 substr(AA,1,1)とやっても無理だった…やっぱAA="254122000"こんなんでないと駄目?
496 :非通知さん@アプリ起動中 :2005/10/08(土) 01:06:19 ID:YC9WlVrTO AA=abs(rand)%5+2.abs(rand)%5+2.abs(rand)%5+2.abs(rand)%5+2.abs(rand)%5+2.abs(rand)%5+2.abs(rand)%5+2.abs(rand)%5+2.abs(rand)%5+2.2.3.2.3.2.3.2.3.2.3.2.3 こんな感じで一様うまくいったが、もう一つabs(rand)%5+2を付けるとバグがでる。_/ ̄|〇
497 :非通知さん@アプリ起動中 :2005/10/08(土) 16:00:43 ID:YC9WlVrTO すごい単純なミスだった…2147483647以上になったからエラー吐かれたのか
498 :434 ◆0F0cprE/F2 :2005/10/08(土) 17:08:49 ID:xqqY8SCdO まあ何にせよ作るならそれにしかない要素や人の感情を動かせるストーリーなどがないと普通の人には"つまらない"ものになっちゃう こないだのムリオも自分ではおもしろいかと思ったが友人にはつまらなかったようだし まあそういう部分は人に任せるとして俺は技術的なとこ手伝うよ
499 :非通知さん@アプリ起動中 :2005/10/08(土) 18:13:52 ID:YC9WlVrTO ストーリーをここに書き込んでいいですか?
500 :非通知さん@アプリ起動中 :2005/10/08(土) 18:22:28 ID:2tBpJHLUO ローグライクのだろ? ぉk。燃料come
501 :ストーリークリエーター(仮) ◆0eZ59nFVhk :2005/10/08(土) 21:33:00 ID:YC9WlVrTO こんな自分好みのストーリーですが聞いてください。 ある日、いつものように家に帰る途中の事だった。 いつものようにいじめっ子にいじめられ近道をして家に帰るはずだった。 しかし時計の針が九時を回っていた事もあって、いつも近道にしていた森の中で迷ってしまった。 そして気が付いたら、いつもなら何もない通り道に、ポッカリと不気味に穴を空けた洞窟があった。 さすがに恐くなったのでその場を立ち去ろうとした。 その時鬱蒼とした森の中に不気味な声がこだました。 『お前は弱い人間なんだな』自分は不気味な声がしたにも関わらず妙に納得してしまったのだ… その次の瞬間また不気味な声がした『でも本当は誰よりも強い…そうだろ?お前はただ自分の力が暴走してしまうのに恐れているのだけだ』 自分は改めてその声の正体の、えもいえないおぞましさを感じた。 そう…あれは子供の頃、定かな記憶ではないが憶えている。 自分は今と変わらずいじめられていた。 ある日いつもの様にいじめられていた‥ その日は特にひどく…殴る蹴る挙げ句は木にがんじがらめに縛られて、自分では解く事もできない。 本当はあの時死んでいたのだろう
502 :ストーリークリエーター(仮) ◆0eZ59nFVhk :2005/10/08(土) 21:34:24 ID:YC9WlVrTO 長すぎる…orz
503 :ストーリークリエーター(仮) ◆0eZ59nFVhk :2005/10/08(土) 21:48:12 ID:YC9WlVrTO 後全角10000文字位あるので…このぐらいにさせてもらいます
504 :434 ◆0F0cprE/F2 :2005/10/08(土) 22:24:10 ID:xqqY8SCdO 早っ 後がきになる…かっこいい系?ファンタジー系?ミステリー? でも10000文字はきつ
505 :ストーリークリエーター(仮) ◆0eZ59nFVhk :2005/10/08(土) 23:20:29 ID:YC9WlVrTO アドベンチャー系。 最終的には死のカードを手に入れて死ぬ。 が命の大樹により復活させられ、魔王(声の主)を倒しに行く。 イェンダーアミュレットの変わりにカードを十枚探す。
506 :ストーリークリエーター(仮) ◆0eZ59nFVhk :2005/10/08(土) 23:48:34 ID:YC9WlVrTO で最後に、その冒険の出来事は夢だと気付く。 そして森の記憶だと気付く…実は命の大樹が主人公を導きそして今日を作らせた 五万年前の超古代文明の魔王大戦によって本当は全てが魔王により破壊されるわけだったが 一人の勇者によって食い止められた でも魔王の魂は現代まで生き続け主人公に、復活に必要なカードを探させる で復活可能なカードが揃ったら死のカードを最後に探させ命を絶たせる。 何故大樹が主人公を蘇らせたかと言うと 主人公が五万年前にいた勇者の魂を持って生まれた少年だったからだ ちなみにその大樹は超古代文明の象徴。 古代文明の遺跡=洞窟(無理矢理ですが)要するに現代まで息を潜めていた それと何故魔王が主人公を最後に消したかというと 主人公があの勇者の魂を持った人間だということを知っていたから 長文すいません。
507 :434 ◆0F0cprE/F2 :2005/10/09(日) 18:36:45 ID:+S26XbiiO システムでちょい提案だけど、ダンジョンの初めで最強状態からスタートして塔を上っていくごとに(時間が経つごとに)弱くなっていくっていうのどうだろうか。だめか…
508 :422 ◆9fLecX9sq2 :2005/10/09(日) 19:53:34 ID:U30mMi+D0 で、ローグライクについて詳しく
509 :非通知さん@アプリ起動中 :2005/10/09(日) 20:09:32 ID:dvF6P+6kO 武器防具腕輪アイテム等ののシステムはあるが全て"〜のカード"という名前になる。 店はシレン風な感じで 十枚の魔法のカード(前者とは異なる)を集め最後に魔王を倒すのが目的。 能力値のレベルアップは経験値が貯まると、 一定値のポイント(例:+20)等がもらえ自由にステータスに加えられる。 ダンジョンは1部屋以上九部屋まで。 すいません本当自分勝手で。
510 :非通知さん@アプリ起動中 :2005/10/09(日) 21:36:10 ID:dvF6P+6kO 能力値を自由に振り分けて尚且つ武器防具… なんか物凄くバランス調整が大変そうなので、 やっぱ能力値は完全に武器防具等のアイテム依存でいきたいです。 レベルアップで増えるステータスはヒットポイントのみということで。
511 :434 :2005/10/09(日) 21:36:16 ID:+S26XbiiO プログラム的にはどうする?マップ初期化関数とメインループと戦闘は別ループだよね?それと店とかシナリオ部分とか切り分けりゃいいよね。 どこ担当したいですか? label 0 'メインループ(移動とか)' goto 0 func Update(){'マップ初期化'} label 戦 '戦闘処理' goto"戦" label 店 '買い物処理' goto"店" label シナ 'シナリオ進行' goto"シナ" label 他 'メニューとか' goto"他"
512 :非通知さん@アプリ起動中 :2005/10/09(日) 21:45:03 ID:dvF6P+6kO あまり…と言うか全く知識が無いんですがシナリオがいいです それとマップ生成なんです一部屋だけ作りました。
513 :非通知さん@アプリ起動中 :2005/10/09(日) 21:53:24 ID:dvF6P+6kO マップ生成の件なんですが… 一部屋つくり主人公が必ずその部屋の中に入るようにできたんですが その後どうやって後の部屋+通路を作れば良いのか分かりません なんかいい方法知りませんか?
514 :422 ◆9fLecX9sq2 :2005/10/09(日) 22:58:18 ID:U30mMi+D0 マジでこれログ読むべき雰囲気? 全然会話が付いていけない とりあえず、変数管理とかちゃんときめれば、>>511 みたいにすれば、分担作業で作れそうだけど
515 :422 ◆9fLecX9sq2 :2005/10/09(日) 23:13:10 ID:U30mMi+D0 ああ、意味がわかった・・・ ↓いまここね コンテストお題何?→ローグライク→みんなで作ろう じゃぁ俺メッセージウィンドウ表示関数とか作ってみるか とりあえず画面の縦横のピクセル幅だけきめようよ
516 :非通知さん@アプリ起動中 :2005/10/09(日) 23:22:41 ID:dvF6P+6kO 1000×1000位がいいです
517 :非通知さん@アプリ起動中 :2005/10/09(日) 23:31:52 ID:dvF6P+6kO 縦横でした(汗
518 :非通知さん@アプリ起動中 :2005/10/09(日) 23:37:25 ID:dvF6P+6kO で誰か通路をつくるにはどうしたらいいのですか? 部屋から部屋までにつなぐ方法が全くもって分かりません
519 :434 ◆0F0cprE/F2 :2005/10/10(月) 11:14:55 ID:Goa2gVvVO ダンジョンてスクロールさせんの?
520 :非通知さん@アプリ起動中 :2005/10/10(月) 13:32:59 ID:UyL9snzvO 読み込みとか低性能機を考慮してゼルダ式でいいんじゃないかな
521 :422 ◆9fLecX9sq2 :2005/10/10(月) 14:06:53 ID:4wtD6p900 >>518 部屋Aの縁から 1:距離を乱数でとる 2:方向を乱数でとる 3:そのラインを空間にする 4:終着点から1〜3をする これを適度に繰り返す 部屋Bの縁から 空間にぶち当たるまで1〜4を繰り返す どうかな もしくわ、ひたすら1〜4ででたらめに線を引きまくってから、 適当な位置をでかく空けて部屋にするとか。 まぁ携帯じゃ無理か
522 :非通知さん@アプリ起動中 :2005/10/10(月) 14:45:06 ID:JbbUMa3mO >>519 さん 主人公は完全固定させ、ダンジョンという図形を動かす感じにしたいと思っています。 >>521 さん 前者のアイディアを使わせてもらいます。 てか今シレンやっていますw
523 :非通知さん@アプリ起動中 :2005/10/10(月) 15:04:47 ID:UyL9snzvO 主人公が壁を掘れるようにするのもいいかもね もちろん制限は必要だと思うけど
524 :422 ◆9fLecX9sq2 :2005/10/10(月) 17:14:47 ID:4wtD6p900 >>522 がんばってくだちい 一つマップデータの管理に関して思いついた。 通過可能/不可能部分を1bit目、主人公存在/非存在を2bit目、 敵Aを3bit目、敵Bを4bit目、とか規定して数値で保存する。 で、メインループで、マップデータ解析→制御オブジェクトデータ抽出 とかを毎行動でループさせれば、 マップ表示だけ作ったよ〜 とかから付け足しやすくなりそう わかりにくくてスマ
525 :非通知さん@アプリ起動中 :2005/10/11(火) 19:18:30 ID:V1xkr/cgO 今部屋が二つになったけど、strやsubstrとか使わなくても平気ですよね?
526 :434 ◆0F0cprE/F2 :2005/10/11(火) 19:44:29 ID:g2fBVd+9O >>522 どんなアルゴリズムで表示するん?処理速度が気になってしょうがない… そしてできれば非QVGAの俺にも親切な設計だと喜ぶ
527 :422 ◆9fLecX9sq2 :2005/10/11(火) 19:45:39 ID:oGmAcDus0 どういう風に作ってるのか気になるなぁ 俺も基本システム作ってみるか
528 :422 ◆9fLecX9sq2 :2005/10/11(火) 20:01:22 ID:oGmAcDus0 >>526 うおwだぶった
529 :非通知さん@アプリ起動中 :2005/10/11(火) 21:01:56 ID:V1xkr/cgO randで箱を生成しました主人公は完全に動きません。
530 :非通知さん@アプリ起動中 :2005/10/12(水) 16:48:43 ID:cqyO6aHSO label 0if(scan&8){end}A=abs(rand)%4A==3&&b=b-20;A==2&&b=b+20;A==1&&a=a+20;A==0&&a=a-20;col(0)frect(a+120,b+120,20,20)goto 0 通路はこんな感じで乱数とって良いんですか?
531 :422 ◆9fLecX9sq2 :2005/10/12(水) 23:19:33 ID:Yd3WSiQi0 >>530 その、20ってのも5〜30の乱数にしてみるといいかも 今 仮想二次元配列ラッパー関数郡 製作中 デフォルトの機能で使えばいい気がしてならないが製作中・・・
532 :422 ◆9fLecX9sq2 :2005/10/13(木) 19:56:18 ID:RThHwEVO0 うー 条件式分岐法を使うとき、代入文の返り値、代入値が0だと偽になるの気付いてなくてめっちゃ手間取ってた・・・ マイナスになりえない数値なら+1すればいいけど、そうじゃない場合ってどうすりゃいいんだろ
533 :非通知さん@アプリ起動中 :2005/10/14(金) 15:59:11 ID:tIl91vJNO おもったんだけど if(DA==1000){break}みたいな事はできないの?
534 :非通知さん@アプリ起動中 :2005/10/14(金) 17:44:57 ID:ycJq3MVWO そらできるよ。それできなかったらbreakの意味がない
535 :422 ◆9fLecX9sq2 :2005/10/14(金) 17:54:33 ID:nJY+e8LV0 func ・(a){return 1} っての定義して条件式中の代入文を囲ってみた。なかなか便利。(関数名は半角の・ 携帯だとあった 二次元配列ラッパー、だいぶできました。あとは自作二次元配列間の矩形転送も作ったら公開します。 マジで意味あるかわからんが・・・
536 :非通知さん@アプリ起動中 :2005/10/16(日) 18:18:45 ID:QiluLOSgO "3,255,255,255,0,0,0,110,0,0,0,10,10,0,0,0,0,1,0,0,0,0,0,0,0,0,1,2,1,0,0,0,0,0,0,0,1,2,2,1,0,0,0,0,0,1,1,1,1,1,0,0,0,0,1,2,2,2,2,2,1,0,0". ",0,1,2,2,2,2,2,1,0,0,0,1,1,1,1,1,1,1,0,0,1,2,2,2,2,2,2,2,1,0,1,2,2,2,2,2,2,2,1,0,1,1,1,1,1,1,1,1,0,0"
537 :422 ◆9fLecX9sq2 :2005/10/17(月) 19:37:15 ID:Dk97tXO10 で ↑は何??
538 :434 ◆0F0cprE/F2 :2005/10/21(金) 12:27:17 ID:prlWNnhcO 1000文字シリーズ「ぶちょぶちょ」 下左右で操作。連鎖を組むことだけが目的。連鎖数は自分で数える つーか誰か高速化して… for(;a<11;A[-1][a]=A[6][a]=A[a++-2][11]=-1){}origin(width/2-36,height/2-72)rect(-1,-1,73,133)soft1("EXIT")B(X=9)@(c,255<<16,0xFF00,255,0xFFFF00,0x800080)label 0lock()clear(X*12,Y*12,12,12)col(c[t]) farc(12*X=X-(A&(m=1)&&!A[X-1][Y])+(A&2&&!A[X+1][Y]),12*Y=Y+((A&4||++g==16)&&(!A[X][Y+1]&&!g=0)||m=0),12,12)unlock(1)if(16&A=scan>>13 ){end}goto!m&&!B();label 1lock()for(J=I=0;I<6;I++){ copy(Z,0,C[I],0,11)}for(W=N=i=0;i<6;i++){for(j=0;j<11;j++){A[i][j]&&!C[i][j]&&(++N,R=a=!H=A[i][j],A(i,j),R>3&&J=W[W++]=N)}}if(W){clear(0,0,72,132)for(i=0;i<6;i++){for(k=!j=10;j>=0;j--){ for(I=0;I<W&&C[i][j];I++){if(W[I]==C[i][j]){copy(A[i],-1,A[i],0,j+1+k++)}}}for(j=0;j<11;j++){if(f=A[i][j]){col(c[f-1])farc(i*12,j*12,12,12);}}}}unlock(1)goto!!J func A(x[a],y[a]){for(C[x[a]][y[a]]=N,I[a]=1;I[a]>-2;I[a]=I[a]-2){if(!C[n=x[a]+I[a]][y[a]]&&A[n][y[a]]==H){A(n,y[a++])}if(!C[x[a]][n=y[a]+I[a]]&&A[x[a]][n]==H){A(x[a++],n)}}R++a--}func B(){A[X][Y]=t+1X=2Y=g=0t=abs(rand)%5}
539 :434 ◆0F0cprE/F2 :2005/10/22(土) 18:32:36 ID:rGyG7YpeO 前にあったぐるぐるは三角関数上の4点をつないでただけで全然3DじゃなかったけどこれはZ座標まであって行列で回す本当の3Dぐるぐる。 ただし重くならないように三角錐を回してます。 abcがXYZ軸の回転角度、これを直接操作できるようにするとおもしろいかもしれない @(X,0,50,-50,0)@(Y,-48,38,38,38)@(Z,0,-38,-38,48)A=rand%10B=rand%10C=rand%10origin(width/2,height/2)label 0lock()col(0)frect(-width/2,-height/2,width,height)for(a=a+A,b=b+B,c=c+C,i=0;i<4; z1=(sin(a)*Y[i]+cos(a)*Z[i])/100,z2=(sin(b)*X[i]+cos(b)*z1)/100,y2=(cos(a)*Y[i]-sin(a)*Z[i])/100,x2=(cos(b)*X[i]-sin(b)*z1)/100,x2[i]=(cos(c)*x2-sin(c)*y2)/100,y2[i]=(sin(c)*x2+cos(c)*y2)/100,z2[i]=z2,i++){} col((CO<65535&&CO=CO+1285,CO))for(i=0;i<4;i++){line(x2[i],y2[i],x2[(i+1)%4],y2[(i+1)%4])}line(x2[1],y2[1],x2[3],y2[3])line(x2[0],y2[0],x2[2],y2[2])unlock(1)if(input(0)){end}goto 0
540 :434 ◆0F0cprE/F2 :2005/10/22(土) 18:48:04 ID:rGyG7YpeO 自分でもやってみたかったから操作できる版作った。上下左右とセンターキーとソフト1で回す soft2("EXIT")@(X,0,50,-50,0)@(Y,-48,38,38,38)@(Z,0,-38,-38,48)origin(66,72)label 0lock()clear(-66,-72,132,144)if(64&S=scan>>12 ){end}(S&1&&a=a+10,S&8&&a=a-10,S&2&&b=b-10,S&4&&b=b+10,S&16&&c=c+10,S&32&&c=c-10) for(i=0;i<4;z1=(sin(a)*Y[i]+cos(a)*Z[i])/100,z2=(sin(b)*X[i]+cos(b)*z1)/100,y2=(cos(a)*Y[i]-sin(a)*Z[i])/100,x2=(cos(b)*X[i]-sin(b)*z1)/100,x2[i]=(cos(c)*x2-sin(c)*y2)/100, y2[i]=(sin(c)*x2+cos(c)*y2)/100,z2[i]=z2,i++){}for(i=0;i<4;i++){line(x2[i],y2[i],x2[(i+1)%4],y2[(i+1)%4])}line(x2[1],y2[1],x2[3],y2[3])line(x2[0],y2[0],x2[2],y2[2])unlock(1)goto 0
541 :非通知さん@アプリ起動中 :2005/10/23(日) 21:06:51 ID:n7E6tHPR0 文字列の結合どうやるんですか
542 :非通知さん@アプリ起動中 :2005/10/23(日) 21:18:43 ID:TeNy3D71O . でつなげる A="1"."2"."3"."4"."5" text(A,0,0,0)input() 長すぎる画像データとかを分けて連結とかに使える
543 :非通知さん@アプリ起動中 :2005/10/24(月) 01:41:11 ID:qHh3kxIQ0 vodaの携帯BASIC使ってるんだが文字の大きさ変更できる? 何度やっても出来ないんだが。
544 :非通知さん@アプリ起動中 :2005/10/24(月) 13:45:55 ID:GtkqrNnaO ローグらいくキボンヌ
545 :434 ◆0F0cprE/F2 :2005/10/24(月) 18:10:33 ID:EWE458PyO ほんとにSPALMでローグなんて作れんのかな…なんか自信なくなってきたよ。まぁ俺は作ってないけど 「(*/+-)」 四則演算の文字列から値を出すプログラム。式文字列はAにそれと同じ式をANSに代入すると二式の結果が表示されます。使えるのは*/+-()と数字のみ A="(50-9)*2+((-6)*8+16)/2" A=A."E" '答え' ANS=(50-9)*2+((-6)*8+16)/2 N=token() func token(){while(1){if(scan){end}if(index("0123456789",strat(A,p))>=0){for(p2=p+1;index("0123456789",strat(A,p2))>=0;p2++){}T[N++]=substr(A,p,p2-p)p=p2}if(index("*/+-()",C=strat(A,p))>=0){p++T[N++]=C}if(strat(A,p)=="E"){T[N]="E"break}}} func ad(){g[n]=fc()M=1while(M){switch(T[N]){case"+":g[n]=g[n]+fc(N++)break;case"-":g[n]=g[n]-fc(N++)break;default:M=0}}return g[n]} func fc(){h[n]=ex()L=1while(L){switch(T[N]){case"*":h[n]=h[n]*ex(N++)break;case"/":h[n]=h[n]/ex(N++)break;default:L=0}}return h[n]} func ex(){r=0if(T[N]=="("){i[n++]=ad(N++)n--N++r=i[n]}if(index("0123456789",strat(T[N],0))>=0){r=T[N++]}return r} text("計算結果 ".ad(),0,0,0) text(" 正解 ".ANS,0,20,0) input()
546 :422 ◆9fLecX9sq2 :2005/10/25(火) 18:22:32 ID:DveTbRLU0 ぐあ 急に流れが ぶちょぶちょはなんか、一個目が落ちて、底辺についてからニマス移動するタイミングでエラー つい最近まで試験だったから何もやってないや
547 :434 ◆0F0cprE/F2 :2005/10/26(水) 07:23:41 ID:VPigsrkfO エラーって何エラー?こっちでは何も出ないけど… 俺は試験中の投稿orz...
548 :非通知さん@アプリ起動中 :2005/10/26(水) 13:19:18 ID:3xhEOaR9O 俺も出なかった N900iで実験
549 :非通知さん@アプリ起動中 :2005/10/28(金) 16:07:36 ID:gEy3nQP2O 精度最悪な平方根求める関数。sqr(数字)と使う。こちらの携帯では√90000=300までは1秒以内に値が返りました。 func sqr(varx){while(varP*varP<varx){varP++}return varP}
550 :非通知さん@アプリ起動中 :2005/10/28(金) 21:42:56 ID:gEy3nQP2O 対数を求めるプログラム。log(底,真数)と使う。log(2,scan)とすると押したボタンの番号を直接得られる。 func log(w,x,P){while(pow(w,P++)<x){}return P-1}
551 :非通知さん@アプリ起動中 :2005/10/29(土) 22:43:08 ID:Jc0p9rlZO 階乗も作ってください
552 :非通知さん@アプリ起動中 :2005/10/29(土) 23:48:56 ID:s3ksQy4bO ほい func fact(x){for(P=1,i=x;i>0;P=P*x--,--i){}return P}
553 :非通知さん@アプリ起動中 :2005/10/30(日) 15:08:23 ID:keYjPV+x0 >>549 もう少し長くなってもいいから精度と速さを向上お願いできます?
554 :非通知さん@アプリ起動中 :2005/10/30(日) 19:00:10 ID:rNE2UyZwO 精度高めたら遅くなりますよ?
555 :非通知さん@アプリ起動中 :2005/10/30(日) 19:18:53 ID:rNE2UyZwO なんだかんだで作成。10000倍の精度にアップ。速度落ちた。sqr2(2)で14142が返ります。 func sqr2(x,P){for(i=0;i<5;x=x*100,P=P*10-10,++i){while(P*P<=x){++P}}return P/10}
556 :非通知さん@アプリ起動中 :2005/10/30(日) 19:24:15 ID:rNE2UyZwO あとひとつ。for文のi<5を1大きくすれば精度は10倍になりますが、遅くなる上に大きな数の平方根を求めようとすると負になったりします。 そこは自分で調整してください。
557 :非通知さん@アプリ起動中 :2005/10/31(月) 15:36:17 ID:9QD/mgAiO 携帯BASICの階乗は、膨大な数を計算できるみたいだけど‥あれはどうなってるんですか?
558 :422 ◆9fLecX9sq2 :2005/10/31(月) 17:35:33 ID:+ZtRRHZ80 平方根自前とかすっげーー!
559 :非通知さん@アプリ起動中 :2005/11/01(火) 23:16:58 ID:KSrbwhdSO 数学関数シリーズ 極めつけはArcTan。 2点(x1,y1)(x2,y2)があるとするとatan(x2-x1,y2-y1)で(x1,y1)から見た(x2,y2)の角度がわかります。 三角関数を出すだけなら簡単ですが今回はtanから角度を出すことにこだわってみました。十字キーで点を動かすと角度を出して線が動く。 soft1("EXIT")origin(66,72)label 0lock()if(32==A=scan>>12 ){end}clear(-66,-72,132,144)frect(-1+X=X-!!(A&2)*4+!!(A&4)*4,-1+Y=Y-!!(A&1)*4+!!(A&8)*4,3,3)line(0,0,cos(T=atan(X,Y)),sin(T))text(T."゚",0,0,0)unlock(1)goto 0 func atan(x,y){if(x){for(t=abs(100*y/x),i=-1;t>tan(i=i+10);){}for(i=i-10;t>tan(i);++i){}y<0^x<0&&i=-i;x<0&&i=180+i;}else{i=Y<0?270:90;}return i}
560 :422 ◆9fLecX9sq2 :2005/11/03(木) 17:53:27 ID:12br5s5+0 うぉう すげぇ・・・ 三角関数って、やっぱ中の人は普通に計算してるのねorz
561 :434 ◆0F0cprE/F2 :2005/11/03(木) 22:48:13 ID:fIJRIhloO …とまぁ、無駄に名無しで投稿させてもらいました。平方根からatanまであったら便利な関数群ができたのでこれで色々なおもしろいプログラムが作れるはずです。 もっと他の人のプログラムが見たい…
562 :434 ◆0F0cprE/F2 :2005/11/13(日) 23:06:24 ID:PEu7NMUAO func mborgsqrt(i,j){k=32768do{}while(j=j^k,j*j>i&&j=j^k,k=k>>1 )return j} たぶんこの平方根関数が最強
563 :非通知さん@アプリ起動中 :2005/11/18(金) 16:50:36 ID:sMYzK6RSO ァソレソレ ∧∧ (゚ω゚)
564 :非通知さん@アプリ起動中 :2005/11/18(金) 17:41:11 ID:PWHaSqm70 あ〜りゃりゃらこりゃら〜
565 :非通知さん@アプリ起動中 :2005/11/18(金) 23:06:12 ID:4AJ+sv250 アニ横か!?
566 :非通知さん@アプリ起動中 :2005/11/22(火) 17:50:42 ID:yBYhc6rY0 放送日age
567 :前スレに「習作」として上げられてた奴を勝手に移植 :2005/11/29(火) 21:16:29 ID:oxY1z9DrO l=9m=(-3)c=250soft1("EXIT")soft2("CLEAR")for(i=0;i<l;i++){x[i]=abs(rand)%width y[i]=abs(rand)%20} label 1color(0,0,0)frect(0,0,240,270)label 0lock()color(0,c,0)for(i=0;i<l;i++){text(abs(rand)%10,x[i],y[i]*12,0)y[i]++if(y[i]*12>height){y[i]=0 x[i]=abs(rand)%width-3}} gc()unlock(1)if(input(0)==131072){end}elsif(scan==262144){goto 1}c=c+m if(c<60|c>252){m=-m}goto 0 勝手に作ってスマソ
568 :非通知さん@アプリ起動中 :2005/11/29(火) 23:13:58 ID:9gPg6fYwP おまいらお願いですからiBASICで動くコード書いてくださいです(´・ω・`)
569 :非通知さん@アプリ起動中 :2005/11/30(水) 00:04:06 ID:oX5DxZ7cO 俺もそう思ったけど時代の流れかと思いSPALM覚えた… 機能、処理ともに格段に上だが直感的に作りやすいのは携帯BASIC+なんだよな… 急激な言語の変化もここが過疎った原因の一つかと 携帯BASICもまだまだ価値ありだよな
570 :非通知さん@アプリ起動中 :2005/11/30(水) 00:19:26 ID:0lxagByM0 SPALMってどこにあるの? ドコモで動く?
571 :非通知さん@アプリ起動中 :2005/11/30(水) 02:37:27 ID:oX5DxZ7cO >>313 からいける 一応、iBASICの強化版である携帯BASICの高速処理版…携帯BASIC+も落とせるよ ちなみに携帯BASIC+とSPALMは基本的に文法が違う
572 :非通知さん@アプリ起動中 :2005/11/30(水) 02:39:49 ID:oX5DxZ7cO 上げとくか┗(*´Д`)┛よいしょ
573 :非通知さん@アプリ起動中 :2005/11/30(水) 02:53:05 ID:0lxagByM0 >>571 d! 早速試してみる
574 :非通知さん@アプリ起動中 :2005/12/01(木) 18:15:20 ID:J1mcKPFGO >>572 キモイ
575 :436 ◆0F0cprE/F2 :2005/12/01(木) 22:29:19 ID:IV17imwTO なんかいいお題無い?
576 :非通知さん@アプリ起動中 :2005/12/01(木) 22:33:14 ID:hsUqOHg6O 思考系パズルとか。 問題作ってみんなで遊べるとかね アクションの面をエディットできる奴でもいいな。 NOBAさん見てくれていないだろうか…
577 :非通知さん@アプリ起動中 :2005/12/02(金) 12:16:48 ID:hRBDJVwtO ローグライクキボンヌ
578 :非通知さん@アプリ起動中 :2005/12/02(金) 14:01:52 ID:6j+Gcca9O カラータイル @(imgCOL,"190,0,0,255,0,0,255,200,200","0,190,0,0,255,0,200,255,200","0,0,190,0,0,255,200,200,255")for(;A<3;++A){loadimg(A[A],"4,".imgCOL[A].",255,255,255,-1,16,16,0,1,1,1,1,1,1,1,1,1,1,1,2,2,1,0,0,0,". "1,2,2,2,2,2,2,2,2,2,2,2,0,0,0,0,2,1,1,1,1,1,1,1,1,1,1,2,1,0,0,0,2,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,2,1,1,2,3,3,3,2,2,1,1,1,1,0,0,0,2,1,1,2,2,2,2,2,1,1,1,0,1,0,0,0,2,1,1,2,2,2,1,1,1,1,". "1,0,1,0,0,0,2,1,1,2,2,1,1,1,1,1,0,0,1,0,0,0,2,1,1,1,1,1,1,1,1,1,0,0,1,0,0,0,2,1,1,1,1,1,1,1,1,1,0,0,1,0,0,0,2,1,1,1,1,1,1,1,1,1,1,0,1,0,0,0,2,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,2,1,1,1,". "0,0,0,0,0,1,1,1,1,0,0,0,2,1,1,0,0,0,0,0,0,0,1,0,1,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0")}lock()for(;i<64;++i){drawimg(A[i%3],i%8<<4,i>>3 <<4,0)}unlock(1)input()
579 :非通知さん@アプリ起動中 :2005/12/02(金) 14:17:33 ID:dZBLsfHfO ■線上のありゃ〜 □[1]角A,Bランダム [0]クリア [S2]終了 xm=2ym=5label 1color(0,0,0)frect(0,0,240,270)soft2("QUIT")label 2ax=abs(rand)%240ay=abs(rand)%240bx=abs(rand)%240by=abs(rand)%240 label 0color(r%250,g%250,b%250)line(ax%240,ay%240,bx%240,by%240)line(ax%240,ay%240,x,y)farc(x-3,y-3,7,7)if(scan==1){goto 1}elsif(scan==262144){end}elsif(scan==2){goto 2} ax=ax+2ay=ay+4bx=bx+6by=by+5r=r+5g=g+7b=b+2x=x+xm y=y+ym if(x>240|x<0){xm=-xm}if(y>240|y<0){ym=-ym}goto 0
580 :非通知さん@アプリ起動中 :2005/12/04(日) 00:00:25 ID:UrfNOnx4O >>578 >>579 しょうもないものつくるなクズ
581 :非通知さん@アプリ起動中 :2005/12/13(火) 22:45:13 ID:e48TmUIhO じゃあなにならいいですか?レースですかそうですか
582 :非通知さん@アプリ起動中 :2005/12/13(火) 23:01:31 ID:fm1LbS+XO クズよばわりはひでぇや(っД`) という訳で新しくまともなものを制作途中なのにすでに7KBを越える勢いだ アプリメーカーズみたいに通信でうpできるといいのにな
583 :非通知さん@アプリ起動中 :2005/12/14(水) 01:55:32 ID:kmgEgTd3O 俺みたいにしっかりとしたRPGなどを作れと言いたい。 俺もここにアップしたいけど20000文字ぐらいあるからちと無理。 それにアップしないのにアゲんな
584 :非通知さん@アプリ起動中 :2005/12/14(水) 06:10:00 ID:uQaEggKMO 晒してない錐ってない、だろが これ以上過疎スレにする気か
585 :非通知さん@アプリ起動中 :2005/12/14(水) 17:27:25 ID:kmgEgTd3O 作っていない=スレの価値が無い
586 :非通知さん@アプリ起動中 :2005/12/14(水) 18:04:31 ID:X0asP0YVO 激しくしょぼいが… 複雑なコースの中を通ってゴールに着くまでにかかったフレーム数の少なさを 競うゲーム。ちなみに俺は186だった(1で終了) @(X,110,88,110,86,104,80,86,72,68,58,66,48,68,52,78,78,82,98,74,90,50,38,38,16,36,14)@(Y,128,128,108,108,88,96,76,96,74,90,66,66,60,48,62,44,66,62,78,90,80,100,44,44,32,32)makeimg(B,132,144)trgt(B)lock() for(i=0;i<24;++i){line(X[i],Y[i],X[i+2],Y[i+2])line(X[++i],Y[i],X[i+2],Y[i+2])}text("GOAL",14,32,32)trgt(off)X=100Y=122label 0R++lock()drawimg(B,0,0,0)if(A=scan,x=X,y=Y,X=X+!!(A&16384)-!!(A&8192),Y=Y+!!(A&32768)-!!(A&4096) ,A(G,G+2)){X=x Y=y}if(A(G+1,G+2)){++G}elsif(A(G,G+1)){--G}frect(X-1,Y-1,3,3)if(A&2){end}if(Y<33){soft2(R)clearkey()input()end}unlock(1)goto 0func A(a,b){ return(X[b]==X[a])?(X[a]<x)^(X[a]<X):(Y>(m=Y[b]-Y[a])*X/(n=X[b]-X[a])+Y[a]-m*X[a]/n)^(y>m*x/n+Y[a]-m*X[a]/n);}
587 :非通知さん@アプリ起動中 :2005/12/14(水) 20:06:55 ID:X0asP0YVO ごめん ちょい修正。 @(X,110,88,110,86,104,80,86,72,68,58,66,48,68,52,78,78,82,98,74,90,50,38,38,16,36,14)@(Y,128,128,108,108,88,96,76,96,74,90,66,66,60,48,62,44,66,62,78,90,80,100,44,44,32,32) makeimg(B,132,144)trgt(B)lock()for(i=0;i<24;++i){line(X[i],Y[i],X[i+2],Y[i+2])line(X[++i],Y[i],X[i+2],Y[i+2])}text("GOAL",14,32,32)trgt(off)X=100Y=122label 0lock() drawimg(B,0,0,0&(++R,A=scan,x=X,y=Y,X=X+!!(A&16384)-!!(A&8192),Y=Y+!!(A&32768)-!!(A&4096),A(G,G+2)&&(X=x,Y=y)))frect(X-1,Y-1,3,3)if((A(G+1,G+2)&&++G)||A(G,G+1)&&--G,G==24&&E(),A&2){end} unlock(1)goto 0func A(a,b){return X[b]==(c=X[a])?c<x^c<X:(Y-Y[a])*(n=X[b]-c)>(m=Y[b]-Y[a])*(X-c)^(y-Y[a])*n>m*(x-c);}func E(){unlock(1)soft2(R)clearkey()input()end}
588 :非通知さん@アプリ起動中 :2005/12/15(木) 22:35:14 ID:PjeYENZHO 何のカキコもないな…orz 俺的には結構すげーと思ったんだけど つーかイライラ棒みたいなゲームにすりゃよかったかな?
589 :非通知さん@アプリ起動中 :2005/12/15(木) 23:12:47 ID:ghJN748JO 面白かった。勃起した やはりプログラムはあげてなんぼ 俺もやる気出た
590 :非通知さん@アプリ起動中 :2005/12/16(金) 12:45:07 ID:PqAiLtjjO そんなに興奮したのか… これからも新しい技術考えるばい
591 :ZACCユウイチ :2005/12/16(金) 14:01:46 ID:GxUuyUQDO みんなどうやってソース作ってんの?BASIC?てか良く作れるな〜……
592 :ZACCユウイチ :2005/12/16(金) 14:08:14 ID:GxUuyUQDO 591 うざい?
593 :ZACCユウイチ :2005/12/16(金) 17:55:22 ID:GxUuyUQDO スレ立てた。 2chスレ
594 :ZACCユウイチ(間違った) :2005/12/16(金) 17:58:41 ID:GxUuyUQDO http://hobby7.2ch.net/test/read.cgi/appli/1134721274/ ↑だっけ?↑
595 :ZACCユウイチ(連レススマソ) :2005/12/16(金) 18:06:59 ID:GxUuyUQDO 連レススマソ。ソース作成出来ないくせして連レスすまん。…てかソース作成難すぎる……RPG作成とかぜってー無理…… 長文スマソ。……
596 :ZACCユウイチ :2005/12/16(金) 18:20:24 ID:GxUuyUQDO a="=1=,=1="= "=ク=ソ=ケ=゙=ー"= O=P=無=し= I=I=U= I=V=W= V=I=I=I=[= ど=う=か=な=?= 当たり前にエラーだった(笑)
597 :ライトアウツSPALM版 1/2 :2005/12/16(金) 20:41:50 ID:BKx0B5M7O func H(q){C[q]=!C[q];}soft2("QUIT")@(PX,0,4,34,64,4,34,64,4,34,64)@(PY,0,4,4,4,34,34,34,64,64,64)frect(0,0,width,height) color(250,250,250)origin(2,2)rect(0,0,93,93)for(x=3;x<64;x=x+30){for(y=3;y<64;y=y+30){rect(x,y,27,27)}}for(n=1;n<10;n++){C[n]=abs(rand)%2}goto 1label 0 i=input()if(i&2){H(1)H(2)H(4)goto 1}elsif(i&4){H(1)H(2)H(3)H(5)goto 1}elsif(i&8){H(2)H(3)H(6)goto 1}elsif(i&16){H(1)H(4)H(5)H(7)goto 1} elsif(i&32){H(2)H(4)H(5)H(6)H(8)goto 1}
598 :2/2 :2005/12/16(金) 20:44:33 ID:BKx0B5M7O elsif(i&64){H(3)H(5)H(6)H(9)goto 1}elsif(i&128){H(4)H(7)H(8)goto 1}elsif(i&256){H(5)H(7)H(8)H(9)goto 1}elsif(i&512){H(6)H(8)H(9)goto 1} elsif(i&262144){end};label 1lock()for(n=1;n<10;n++){if(C[n]==1){color(150,230,150)frect(PX[n],PY[n],23,23)P++} elsif(C[n]==0){color(0,0,0)frect(PX[n],PY[n],23,23)}}unlock(1)if(P==9){color(250,250,0)text("CLEAR!",31,115,0)clearkey()input()end}P=0goto 0
599 :ZACCユウイチ :2005/12/16(金) 20:46:48 ID:GxUuyUQDO ライトアウツって何?良く作ったね〜!
600 :非通知さん@アプリ起動中 :2005/12/16(金) 22:05:28 ID:PqAiLtjjO あんまり意味無いけど ライトアウト短縮版。手数がカウントできる func H(q,r){C[i%3+q][i/3+r]=!C[i%3+q][i/3+r]}soft2("QUIT")frect(0,0,width,height)col(0xFAFAFA)origin(2,2)rect(0,0,93,93)for(n=0;n<9;C[n%3][n++/3]=abs(rand)%2){rect(3+n%3*30,3+n/3*30,27,27)}goto 1 label 0i=log(input())if(i&&i<10){--i H(0,0)H(-1,0)H(0,-1)H(1,0)H(0,1)T++goto 1}elsif(i==18){end}label 1lock()for(n=0;n<9;++n){if(1==c=C[n%3][n/3]){col(0x9AE69A)frect(4+n%3*30,4+n/3*30,23,23)++P} elsif(!c){col(0)frect(4+n%3*30,4+n/3*30,23,23)}}unlock(1)if(P==9){col(0xFAFA00)text("CLEAR!",31,98,0)text(T."手",31,112,0)clearkey()input()end}goto P=0func log(x,p){while(pow(2,++p)<x){}return p}
601 :ZACCユウイチ :2005/12/16(金) 22:14:09 ID:GxUuyUQDO 誰か基礎から教えてください(__)ペコリ http://hobby7.2ch.net/test/read.cgi/appli/1134721274/
602 :非通知さん@アプリ起動中 :2005/12/19(月) 23:52:08 ID:ONZHSgJuO 何か書け$OT
603 :非通知さん@アプリ起動中 :2005/12/21(水) 21:39:17 ID:41ESyvj70 NG推奨ID:GxUuyUQDO
604 :非通知さん@アプリ起動中 :2005/12/22(木) 00:33:00 ID:C4iItzoqO 最強?BASIC 何かBASICの作って$OH
605 :非通知さん@アプリ起動中 :2005/12/22(木) 18:09:12 ID:671zCfdXO いまさらだがファンクション便利だな 色替えとかバイブさせるテキストツール作ってた椰子いたよな…
606 :非通知さん@アプリ起動中 :2005/12/22(木) 18:47:36 ID:C4iItzoqO なんか教えてm(≧U≦)m
607 :非通知さん@アプリ起動中 :2005/12/23(金) 10:18:19 ID:vAIag97D0 >>605 ああ、FTSYSだっけ?あれも開発続けたら面白かったろうに
608 :非通知さん@アプリ起動中 :2005/12/24(土) 11:58:47 ID:D7TkuZQ60 思ったんだけど前スレ見たいって人いる? html持ってるからいいあぷろだあればあげるかもなんだけど… 結構面白い事書いてあるしプログラムも全部携帯BASICのだからいいんじゃない?
609 :非通知さん@アプリ起動中 :2005/12/24(土) 15:13:17 ID:QZE0FCICO 神が! 個人的には見たい(`・ω・´)
610 :非通知さん@アプリ起動中 :2005/12/24(土) 16:45:00 ID:RB8XK2VU0 >>608 前スレって982で終わってるの?
611 :非通知さん@アプリ起動中 :2005/12/24(土) 17:14:39 ID:i1vnnNOTO そうそうあの982で保守失敗の… で、自分にはあぷろだの捜索能力がないんでいいとこあったら紹介してもらえます? もしかしたらZIP化するかも
612 :非通知さん@アプリ起動中 :2005/12/24(土) 18:14:15 ID:4rMkE9NMO シレン風の作り方教えて下しぃ。自機:voda 使用アプリ:携帯BASIC 1.0.5
613 :非通知さん@アプリ起動中 :2005/12/24(土) 18:25:01 ID:AtXevzzqO ↑ゆういちキタすwwwバカスwww
614 :非通知さん@アプリ起動中 :2005/12/24(土) 18:48:36 ID:QZE0FCICO 過疎スレだしゆういちでも全然歓迎 ゆういち、メール欄には sage って書かんと悪徳業者や厨房が現れるからそこだけ頼むぜ よし、まずは8*8のマップを自由に歩けるプログラムを作ってみろ
615 :非通知さん@アプリ起動中 :2005/12/24(土) 19:05:04 ID:4rMkE9NMO 自機教えりゃバレたな。8×8マップ:作れない 移動:悪い。分かんね。俺はBASICユーザー辞めたがいいか?辞めたがいいよな…
616 :非通知さん@アプリ起動中 :2005/12/24(土) 20:04:04 ID:QZE0FCICO X=4Y=4 label 0 lock() clear(0,0,width,height) text("人",X*12,Y*12) unlock(1) if input()and keyup and X>1then X=X-1 elseif scan=keydown and X<8then X=X+1 elseif scan=keyleft and Y>1then Y=Y-1 elseif scan=keyright and Y<8then Y=Y+1 goto 0
617 :非通知さん@アプリ起動中 :2005/12/24(土) 20:11:04 ID:QZE0FCICO 悪い、こっちな X=4Y=4 label 0 lock() clear(0,0,width,height) text("人",X*12,Y*12) unlock(1) if input()and keyup and Y>1then Y=Y-1elseif scan=keydown and Y<8then Y=Y+1 elseif scan=keyleft and X>1then X=X-1elseif scan=keyright and X<8then X=X+1endif goto 0
618 :非通知さん@アプリ起動中 :2005/12/24(土) 21:00:19 ID:4rMkE9NMO ありがとざいあす!ところでgoto 0って……
619 :ゆういち :2005/12/24(土) 21:14:37 ID:4rMkE9NMO 617さん この恵まれ無い私にお教えありがとうございます! もう神で決定したいな。
620 :ゆういち :2005/12/24(土) 21:33:36 ID:4rMkE9NMO 初めてのage
621 :ゆういち :2005/12/24(土) 21:34:56 ID:4rMkE9NMO んでもってマジのシレンやってた。
622 :ゆういち :2005/12/24(土) 23:12:03 ID:4rMkE9NMO 3Dの作り方ない?
623 :非通知さん@アプリ起動中 :2005/12/25(日) 00:20:12 ID:R5ecSuBWO 努力の様子が伺えない現段階じゃ絶対に無理だと言い切れるな。 ただ頭が弱いだけならまだしも努力しねーんだもん、そら無理だよ。
624 :非通知さん@アプリ起動中 :2005/12/25(日) 19:43:46 ID:ADwD6wjsO >ただ頭が弱いだけ プゲラ
625 :非通知さん@アプリ起動中 :2005/12/25(日) 21:59:08 ID:R5ecSuBWO ダンジョン自動生成型探索プログラム。ファイルは2つ。 タイトル「init」 迷路を生成し、初期化 label 1for(w=width,h=height,N="北東南西",H[3]=H[0]=-H[1]=H[2]=1,V=!P[1]=P[0]=i=0;i<105;M[1][i%15][i/15]=M[0][i/15][i++%15]="B"){}MAKEMAZE(15,7)M[1][14][6]=M[0][6][14]="C"x=y=-1000origin(w/2,h/2) func MAKEMAZE(W,H){for(i=1;i<W;i=i+2){for(j=1;j<H;M[1][i][j]=M[0][j][i]="A",j=j+2){while(M[1][i+x=rand%2][j+y=x?0:(rand&1)*2-1;]=="A"){}M[1][i+x][j+y]=M[0][j+y][i+x]="A"}}}soft1("EXIT")
626 :非通知さん@アプリ起動中 :2005/12/25(日) 22:05:44 ID:R5ecSuBWO タイトル「ダジョン」 左右で向きを変える。上で前進 座標(14,6)につくとメッセージウィンドウが表示されるので1か2で降りるかを選択 #init#label 0lock()col(0x400040)if(1<<17&A){end}if(B&&M[1][P[1]][P[0]]=="C"){clear(-27,-15,54,30)rect(-28,-16,55,31)text("1.おりる",-24,0,32)text("2.やめる",-24,1,0)if(A&2){B=0goto 1}elsif(A&4){B=0}}else{ clear(-w/2,-h/2,w,h)if(1&A=A>>12 ){k=M[j=V&1][P[j]+H[V]][P[1-j]]if("B"==k||"C"==k){P[j]=P[j]+H[V]B=1}}elsif(A&2||(A&4)){V=1+V+A&3}text("方位:".strat(N,V).";座標(".P[1].",".P[0].")",-66,-72,0)for(i=0;i<4;++i){ line(62*H[i+1&3],62*H[i],0,0)}for(i=0;i<5;++i){j=16+i*24K=V&1l=M[K][P[K]+i*H[V]][P[1-K]]if("B"==l||"C"==l){for(k=0;k<2;++k){l=M[K][P[K]+i*H[V]][P[1-K]+H[k]*(1-(V>>1 <<1))]if("B"==l||"C"==l){ rect(x/(j+12*H[k]+12),y/(j+24),-x/(j+24)-x/j,-y*2/(j+24))}}rect(x/j,y/j,2000/j,2000/j)}else{frect(x/j,y/j,2000/j,2000/j)break}}farc(-10,40,20,5)col(0x80FE)frect(-8,12,16,30)}unlock(1)A=input()goto 0
627 :非通知さん@アプリ起動中 :2005/12/25(日) 23:05:27 ID:mVyIIkfoO sugeeeeeeee!! 大迷路思い出した(wizではないのがミソ) 神よ、&&とか||の使い方を教えて下さい なんとなくキー関連が短縮できそうな気がしてます
628 :非通知さん@アプリ起動中 :2005/12/26(月) 20:41:35 ID:AUbc+Pc3O 神の教えてくれた手で色んな奴出来るよ。たとえば「主人公動かし処理」←普通「敵動かし処理」←出来る?「スライム動かし処理」←難い? スライム動かし処理はtext(" ∧ ",20,20) text(" (・ ・) ",20,30) text("  ̄",20,40) 後は動かす処理等で… 神>敵の作り方もしくは戦いを教えて下さい!師匠(?)!
629 :非通知さん@アプリ起動中 :2005/12/26(月) 21:07:34 ID:SdYjHn6uO 配列もわからん馬鹿に教えるかヴォケww少しは自分で考えろ。
630 :非通知さん@アプリ起動中 :2005/12/26(月) 21:45:38 ID:Srxd8BrhO そこまで分かってるなら出来るだろ soft1("進化")soft2("終了")h=" 人"X=4Y=4label 0lock()clear(0,0,width,height)text(h,X*12,Y*12)text("(・・)",X*12,Y*12+10)text("  ̄",X*12,Y*12+21) unlock(1)if input()and keyup and Y>1then Y=Y-1elseif scan=keydown and Y<8then Y=Y+1elseif scan=keyleft and X>1 then X=X-1elseif scan=keyright and X<8then X=X+1 elseif scan=keysoft2 then exit elseif scan=keysoft1 then h=" V"endif goto 0
631 :非通知さん@アプリ起動中 :2005/12/27(火) 00:15:30 ID:jOEbZnhwO >>630 与え厨は(・А・)イクナイ
632 :神 :2005/12/27(火) 00:31:26 ID:cUapEmpaO >>328 スライムでも見てろ。 5,255,255,255,0,255,255,0,0,0,255,0,0,0,160,160,5,16,16,0,0,0,0,0,0,0,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,0,0,0,0, 0,0,0,0,0,0,0,1,0,1,1,1,1,0,0,0,0,0,0,0,0,0,1,0,1,1,1,1,1,1,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,1,1,1,0,0,1,1,1,1,0,0,1,1,1,0,1,1,1,0,2,2,0,1,1,0,2,2,0,1,1,1,1,1, 1,0,2,2,0,1,1,0,2,2,0,1,1,1,1,1,1,1,0,0,1,1,1,1,0,0,1,1,1,1,1,1,1,1,1,3,1,1,1,1,3,1,1,1,1,4,0,1,1,1,1,3,3,3,3,3,3,1,1,1,4,0,0,0,1,1,1,1,3,3,3,3,1,1,4,4,0,0,0,0,0,0,1,1,1,1,1,4,4,4,0,0,0,0
633 :非通知さん@アプリ起動中 :2005/12/27(火) 09:32:49 ID:sExSL7Y4O あれ…もしかしてSPALMって複数スレッド動かせないのか?
634 :非通知さん@アプリ起動中 :2005/12/27(火) 13:31:03 ID:jOEbZnhwO >>633 イエス! マルチスレッドなし
635 :非通知さん@アプリ起動中 :2005/12/27(火) 13:45:02 ID:sExSL7Y4O マジですかあ…今構想中の物は作れないやorz まあ工夫してやってみるかな 情報thx ところでkeez rabの携B+落とそうとすると504になるのは俺だけかな
636 :非通知さん@アプリ起動中 :2005/12/27(火) 13:48:27 ID:sExSL7Y4O ごめん、Keez lab で 404 だった
637 :非通知さん@アプリ起動中 :2005/12/27(火) 16:41:42 ID:vtK3EXbq0 携帯コンテンツ http://hobby7.2ch.net/chakumelo/ 次はこの板でしないか? ゲームじゃないし
638 :非通知さん@アプリ起動中 :2005/12/27(火) 17:25:32 ID:cUapEmpaO アプリ=ゲーム ではない
639 :非通知さん@アプリ起動中 :2005/12/27(火) 19:37:22 ID:sExSL7Y4O ソースアップ板にプログラム上げてる奴、ゆういちか? だとしたらカマトトやめてなんか作れ
640 :非通知さん@アプリ起動中 :2005/12/27(火) 20:19:48 ID:jOEbZnhwO >>639 雷キック・オフ ただのMAP?表示 ただの文字表示は、たぶんゆういちだろうな。 ホントあんなもんアップするなと。ちなみに404は俺もなった。 俺もスレッド使いたかった‥
641 :非通知さん@アプリ起動中 :2005/12/28(水) 18:11:45 ID:uNY3At2zO >1-640 プログラミングコンテスト ・SPALMか携帯BASICのみ。 ・今回のお題は[レースゲーム]で。 ・期間は1週間。 ・ではスタート!
642 :非通知さん@アプリ起動中 :2005/12/28(水) 18:14:22 ID:uNY3At2zO >641 プログラミングコンテストね。よっしゃ〜!やる気でたぜ〜! >632 は何?
643 :非通知さん@アプリ起動中 :2005/12/28(水) 22:31:46 ID:8DpRfWd8O 自演すんだったら自分で立てたとこでやれよ…。
644 :非通知さん@アプリ起動中 :2005/12/28(水) 23:53:19 ID:+OX838PeO >>641 てめーはクルクルパーだな
645 :非通知さん@アプリ起動中 :2005/12/30(金) 09:13:14 ID:k41KoUS9O ダンジョンRPGのアイテムと言えば何があんの?つーか何が欲しい? 参考にしたいので教えて
646 :>645 :2005/12/30(金) 17:50:59 ID:AjUWvWAWO >645 え〜と……? 何が欲しいかとゆうと…… 奇跡の腕輪 ・一回行動したらたまにHPを5回復させる。
647 :非通知さん@アプリ起動中 :2005/12/30(金) 18:04:38 ID:omVN2vW9O ローグライクきぼーん
648 :非通知さん@アプリ起動中 :2005/12/31(土) 00:41:46 ID:so9TGV/FO ローグではないのかもだけど、今不思議のダンジョンRPG作ってんのよ。 今は アイテム セーブ・ロード機能 ダンジョン生成・表示 と細かいのがいくつか実装済みなのよ。 これからバトルとかパラメータ系整えば完成しそう あ、シナリオも必要か…一人でやるけどね
649 :非通知さん@アプリ起動中 :2005/12/31(土) 00:53:46 ID:NHoOmav7O >>648 >不思議『の』ダンジョン 分かってるねぇ(^O^)
650 :非通知さん@アプリ起動中 :2005/12/31(土) 18:16:55 ID:so9TGV/FO 戦闘はエンカウント方式でいくわけだが 敵キャラを決めにゃならん 画像では容量重いし、図形でも手間がかかる…よって顔文字でいくことにした。 どんなのがいい? 【顔文字】 【戦法】
651 :非通知さん@アプリ起動中 :2005/12/31(土) 21:59:50 ID:f7M94ww8O >650 顔文字.(・U・)ノシ 戦法.1:(U・)〓〓〇−☆2:(・3・)〓〓3
652 :非通知さん@アプリ起動中 :2006/01/01(日) 09:40:17 ID:SOAl64t6O ちょっと細かいこと言うと敵AAは一つでよくて行動コマンドは攻撃・魔法・回復・防御の4つ ステータスは強さ・防御力・魔力・精神力・素早さ・運がある。 これをふまえて書いてくれ
653 :805 :2006/01/01(日) 10:15:50 ID:fgGPH0tHO ステータスとかも書けばいいのか?
654 :非通知さん@アプリ起動中 :2006/01/01(日) 11:25:56 ID:SOAl64t6O 攻撃ばっかとか回復重視とか
655 :非通知さん@アプリ起動中 :2006/01/01(日) 14:41:12 ID:mrm4PFTqO うp汁
656 :非通知さん@アプリ起動中 :2006/01/01(日) 15:43:41 ID:SOAl64t6O 今はまだゲームになってないくせにファイルが5個もあるからめんどい トラップ床実装完了。 バトル画面はちょこっとポケモン風でいく。全体的に画面レイアウトがきつきつ そして… 非 Q V G A 用
657 :非通知さん@アプリ起動中 :2006/01/01(日) 16:19:26 ID:QgYgde60O 俺もコマンドバトル作ってみよっと 非QVGAでやってみる
658 :非通知さん@アプリ起動中 :2006/01/01(日) 19:28:05 ID:mrm4PFTqO めんどくても、うpしる、じゃないと本当に作ってるかどうかも分からんし、アドバイスもできん
659 :434 ◆0F0cprE/F2 :2006/01/01(日) 20:05:20 ID:SOAl64t6O 「本体」 #init#origin(width/M[1][14][6]=2,height/2)soft1("EXIT")soft2("MENU")label 1if(1<<18&A){gosub"図"}lock()if(CL()+C()+1<<17&A){end}B=0if(1&A=A>>12 ){if(M[j=V&1][P[j]+H[V]][P[1-j]]){P[j]=P[j]+H[V]B=1}} elsif(A&14){V=1+V+A+A/8&3}text("方位:".strat(N,V).";座標(".P[1].",".P[0].")",-66,-72,0)line(-62,-62,62,62)line(-62,62,62,-62)for(i=0;i<5;++i){if(j=H[4+i],M[K=V&1][P[K]+i*H[V]][P[!K]]){for(k=i>>2 <<1;k<2;++k){ if(M[K][P[K]+i*H[V]][P[!K]+H[k]*(1-(V>>1 <<1))]){rect(-H[4+i+k],-l=H[5+i],l+j,l+l)}}rect(-j,-j,j+j,j+j)}else{frect(-j,-j,j+j+1,j+j)break}}farc(-10,40,20,5)col(0x80FE)frect(-8,12,16,30)unlock(1) if(I=M[1][P[1]][P[0]],B&&I==1){if(abs(rand)%2000<EN){gosub"戦"}elsif(D[22]&1){D[7]=D[7]-HP/100}if(D[7]<1){goto"死"}}I<3&&A=input();goto I label 2if(!B){goto 1} clear(-27,-15,54,30)C()rect(-28,-16,55,31)text("1.おりる",-24,0,32)text("2.やめる",-24,1,0)unlock(1)B=0while(!(A=input()&6)){}goto A>>2 label図lock()drawimg(M,-61,-71,CL(C())) for(i=0;i<6;++i){text(substr("Lv HP EXPFLRGLDTIM",i*#sub##sub3#
660 :434 ◆0F0cprE/F2 :2006/01/01(日) 20:08:45 ID:SOAl64t6O 「init」 labelーif(!load()){@(D,5,5,5,5,5,5,1,300,0,1,0,0,2,2)SAVE()}k=load()for(j=-1;i<24;D[i++]=substr(k,++j,-j+j=index(k,",",j))){}@(H,-1,1,1,-1,62,25,15,11,8) @(IM,"ポーション","万能薬","破砕グラブ","鉄壁","水晶玉","マモノ餌","TNT爆弾","見透しの巻物","透明マント","幸せの風")@(IP,1,3,4,4,6,6,10,10,10,200)makeimg(M,122,58)get=tick/1000-D[11]V=-1frect(C(),0,width,height)w=132h=144N="北東南西"--D[9]LV=D[6] HP=LV*LV+237*LV+362>>1 label 0gc()if(m=++D[9]%10==0&&V>=0){gosub 9}EN=100for(P[V=1]=P[0]=B=i=0;i<105;M[1][i%15][i/15]=M[0][i/15][i++%15]=1){}for(i=1;104>i=i+1+abs(rand)%40;M[1][i%15][i/15]=3+(rand&1)){} for(i=1;i<15;i=i+2){for(j=1;j<7;M[1][i][j]=M[0][j][i]=0,j=j+2){while(!M[1][i+x=rand%2][j+y=x?0:(rand&1)*2-1;]){}M[1][i+x][j+y]=M[0][j+y][i+x]=0}}trgt(M)lock()clear(0,0,122,58)C()rect(0,0,121,57)for(i=0;i<120;i=i+8){ for(j=0;j<56;j=j+8){switch(M[1][i>>3 ][j>>3 ]){case 0:frect(i+1,j+1,8,8)break;case 3:frect(i+3,j+3,4,4)frect(i+4,j+2,2,6)clear(i+4,j+3,1,3)}}}trgt(off)
661 :434 ◆0F0cprE/F2 :2006/01/01(日) 20:10:16 ID:SOAl64t6O 「sub」 3,3).":".D[i+6],0,i*12-12,0)text(strat("強耐魔精早運",i).":".D[i],-64,i*12-12,0)}text("ST",-64,60,0)for(i=0;i<4;++i){if(D[22]&1<<i){text(strat("毒沈闇混",i),-52+i*12,60,0)}}text("MaxHP:".HP,0,60,0)soft1("SAVE")soft2("ITEM") C()while(64!=(j=input(0)>>12 )&&(j&32&&j=SAVE(D[11]=k),1)){lock()clear(P[1]*8-60,P[0]*8-70,8,8)clear(24,48,42,12)col(0xFFFFFF)rect(-65,-13+12*a=D[23],12,12)C()rect(-65,-13+12*D[23]=a+(j&8&&5>a)-(j&1&&a>0),12,12) text((k=tick/1000-get)/3600.":".k/60%60.":".k%60,24,48,0)farc(P[1]*8-60,P[0]*8-70,8*i=!i,8)unlock(1)}m=0label 9soft1(m?"買う":"使う";)soft2("戻る")lock()CL()C()for(i=1;i<11;++i){text(IM[i-1],-52,i*12-72,0)} text(m?"SHOP":"ITEM";,0,-72,i=1)line(-66,-60,66,-60)text(D[10],66,60,8*m)k=0while(64!=j=input(0)>>12 ){lock()clear(-66,-59,12,131)text("*",-65,-60+12*k=k+(j&8&&9>k)-(j&1&&k>0),0)if(j&32){if(m&&0<=j=D[10]-IP[k]*50){ D[k+12]++clear(0,60,66,12)text(D[10]=j,66,60,8)}elsif(D[k+12]*!m){D[k+12]--i=1switch(k){case 1:D[22]=0break;case 4:#sub2#
662 :434 ◆0F0cprE/F2 :2006/01/01(日) 20:11:40 ID:SOAl64t6O 「sub2」 D[3]=D[3]+D[3]*BT/2case 2:case 3:D[j=k-2]=D[j]+D[j]*BT/2break;case 6:K=V&1BT||M[1][x=P[1]+K*H[V]][y=P[0]+!K*H[V]]>2&&IT(x,y);T[0]=0break;case 0:(D[7]=D[7]+200)>HP&&D[7]=HP;break;case 7:trgt(M)C() for(j=1+200*STA=BT;j<104;++j){if(M[1][a=j%15][b=j/15]==4){farc(a*8+1,b*8+4,8,4)}}trgt(off)origin(width/2,height/2)break;case 8:EN=EN>>BT BT=0break;case 5:EN=EN<<BT break;case 9:for(D[22]=j=0;j<6;++D[j++]){}}}} clear(30,-59,36,119*i)for(j=-5;i&&j<5;++j){text(m?IP[j+5]*50:D[j+17];,66,j*12,8)}i=0unlock(1)}soft1("EXIT")soft2("MENU")return;func CL(){clear(-66,-72,w,h)}func C(){col(0x400040)}label 3 for(i=0;i<10&&10-i<abs(rand)%15;++i){}D[j=10*!i+!!i*11+i]=D[j]+(i?1:j=abs(rand)%501;)IT(P[1],P[0],1)text((i?IM[i-1]:j."GLD";)."を手に入れた!",0,-6,1)input()goto 1label 4switch(2+j=rand%3){case 0:case 4: MS=(j-2?(j=5,"金"):"HP";)."半減!"D[j+5]=D[j+5]>>1 break;case 3:case 1:(D[9]=D[9]+j*(1+abs(rand)%10))<1&&D[9]=0;MS=D[9]+1."階へワープ!"break;case 2:MS="ステータス異常!"D[22]=15}
663 :434 ◆0F0cprE/F2 :2006/01/01(日) 20:12:33 ID:SOAl64t6O 「sub3」 IT(P[1],P[0],1)text(MS,0,-6,1)sleep(1500)goto!(abs(j)==1)func SAVE(){for(_="",j=0;j<24;_=_.D[j++].","){}save(_)}label戦BT=1S=CL()C()frect(MX=-66,-72,w,h)TY=-MY=30BG=0xECD6B4while(BT){lock()clear(-66,-36,w,72) switch(S){case 0:S=!TX=-1*MX=MX+6break;case 1:sleep(3000)BT=0break;}col(BG)text("(`・ω・´)",TX,TY,0)text("たたかう",0,36,1)text("ぼうぎょ まほう ",0,48,1)text("アイテム",0,60,1)col(BG>>1 )text("( ゚Д ゚",MX,MY,40) unlock(1)}return;func IT(X1,Y1,W1){C()frect(-67,-10,w+2,20*W1)clear(-66,-9,w,18*W1)trgt(M)clear(X1*8+1,Y1*8+M[1][X1][Y1]=1,8,8)trgt(off)origin(width/2,height/2)} label死C()frect(-66,-72,w,h)col(0xFFFFFF)text("You are deleted",0,-12,1)text("from this world...",0,0,1)save(0)goto"ー"
664 :434 ◆0F0cprE/F2 :2006/01/01(日) 22:41:52 ID:SOAl64t6O スマソ操作方法忘れてた…orz ダンジョン表示画面 上…前進 左右…向き替え 下…後ろ向き メニュー画面 上下…集中的に鍛えたいステータスを選択 マップ…四角が壁。コインマークがアイテム。見透しの巻物を使うとトラップの所に落とし穴がでる ステータス…異常があると表示されます。 アイテム画面 上下…選択 ソフト1…使用 ポーション…HP200回復 万能薬…ステータス異常回復 破砕グラブ…攻撃UP 鉄壁…防御UP 水晶玉…魔・精UP TNT爆弾…前のアイテム・トラップ破壊 見透しの巻物…トラップがマップで表示される 透明マント…エンカウント半減 マモノ餌…エンカウント2倍 幸せの風…ステータスUP+ステータス異常回復 死ぬと完全に初期化されて1階に戻る
665 :非通知さん@アプリ起動中 :2006/01/01(日) 23:00:27 ID:mrm4PFTqO 戦闘画面で停止しますた
666 :434 ◆0F0cprE/F2 :2006/01/02(月) 00:21:48 ID:UdyrTu2mO 画面を切り替えるタイミングでは処理が遅くなりがちだからちょっとまったりすれば動くかも
667 :非通知さん@アプリ起動中 :2006/01/02(月) 00:33:28 ID:UtDmI2qeO >434氏 すげーな。 携帯BASICで出来るか気になるが。
668 :非通知さん@アプリ起動中 :2006/01/02(月) 00:34:28 ID:83UYyPvdO すげーが俺も止まるんだが
669 :非通知さん@アプリ起動中 :2006/01/02(月) 00:43:03 ID:UtDmI2qeO >434氏 >で1とかは >>1 でいいよ?
670 :非通知さん@アプリ起動中 :2006/01/02(月) 07:18:08 ID:aH9FZSRJO >>,<<,&&,|| これの使い方がよくわからん…
671 :434 ◆0F0cprE/F2 :2006/01/02(月) 09:28:36 ID:UdyrTu2mO バトルで止まるってどういう風に?操作きかないってこと? ちなみにバトルは始まると敵が出てきて何かボタンを押すと数秒後にダンジョンに戻るはずだけど
672 :非通知さん@アプリ起動中 :2006/01/02(月) 09:41:22 ID:83UYyPvdO とりあえず戦闘シーンは描画されるが操作不能
673 :434 ◆0F0cprE/F2 :2006/01/02(月) 10:14:40 ID:UdyrTu2mO initのEN=100というところを0にするとエンカウント率0になるよ
674 :434 ◆0F0cprE/F2 :2006/01/02(月) 13:41:20 ID:UdyrTu2mO どうですかこれ
675 :非通知さん@アプリ起動中 :2006/01/02(月) 14:15:53 ID:UtDmI2qeO やっぱすげーよ。 >434氏 は天才かも?もしくは本物のPGさん?
676 :434 ◆0F0cprE/F2 :2006/01/02(月) 14:39:51 ID:UdyrTu2mO 本物のPGはこんなんやらんだろ、多分。
677 :非通知さん@アプリ起動中 :2006/01/02(月) 16:53:09 ID:UtDmI2qeO 曲のロードの仕方教えて。 >434氏
678 :434 ◆0F0cprE/F2 :2006/01/02(月) 17:05:43 ID:UdyrTu2mO auのみ bgm("タイトル",繰り返し回数)
679 :非通知さん@アプリ起動中 :2006/01/02(月) 17:13:06 ID:UtDmI2qeO >434氏優しいですね〜!
680 :非通知さん@アプリ起動中 :2006/01/02(月) 17:29:07 ID:UtDmI2qeO 俺と>434氏しかいないのか?
681 :非通知さん@アプリ起動中 :2006/01/02(月) 17:36:33 ID:aH9FZSRJO ノ 今ゲームシステム練ってる
682 :434 ◆0F0cprE/F2 :2006/01/02(月) 17:47:59 ID:UdyrTu2mO >>681 簡単でもいいから一通り決めといた法がいいですよ。途中から考えるのは大変だしorz にしてもSPALMってすげぇスパゲッティプログラムになるよな…
683 :非通知さん@アプリ起動中 :2006/01/02(月) 19:28:18 ID:UtDmI2qeO ここは携帯BASICの板でつか?SPALMの板でつか?
684 :434 ◆0F0cprE/F2 :2006/01/03(火) 12:54:22 ID:GfwvYpwKO 簡単な惑星待ち受け。関数Heavenly呼び出しで画面中央に指定半径の木星みたいなのを描画。かなり時間がかかるがきれい frect(0,0,width,height)func Heavenly(R){origin(width/2,height/2)for(Y=-R;Y<=R;++Y){for(CL=abs(rand)&255,X=R;X--;){ if(0<p=R*R-X*X-Y*Y){ color(c=CL*sqr(p)/R,c,c)line(-X,Y,X,Y)}}}}func sqr($,P){while(P*P++<=$){}return P-2} lock()Heavenly(20)unlock(1)input()
685 :初心者○号 :2006/01/03(火) 17:47:24 ID:2d1nEB32O 携帯BASICの初心者ですo frect(80,MAX) input() みぢかソース
686 :434 ◆0F0cprE/F2 :2006/01/03(火) 17:55:48 ID:GfwvYpwKO またサイトの解説を読めない人がきたみたいですね… なんで解説読まないんだ?
687 :初心者○号 :2006/01/03(火) 18:23:19 ID:2d1nEB32O 間違えた frect(20,80,20,50) input()
688 :非通知さん@アプリ起動中 :2006/01/04(水) 00:16:09 ID:hRLAtkYkO >>685 .687 ゆういちか
689 :434 ◆0F0cprE/F2 :2006/01/06(金) 19:45:34 ID:dHzT2prXO 魔法エフェクト4種完成。これが一番おもしろかったかも… それとソースもかなり長くなりそうだがその説明もかなり長くなりそう 説明ってどこまで必要?
690 :非通知さん@アプリ起動中 :2006/01/06(金) 20:06:13 ID:9mjOugQtO 端的で結構
691 :434 ◆0F0cprE/F2 :2006/01/06(金) 21:12:48 ID:dHzT2prXO OK
692 :434 ◆0F0cprE/F2 :2006/01/08(日) 17:01:34 ID:o74bupbhO ドコモってfoval関数使えるよね?
693 :非通知さん@アプリ起動中 :2006/01/08(日) 17:38:29 ID:PNkslNBSO イエス
694 :非通知さん@アプリ起動中 :2006/01/08(日) 21:56:23 ID:o74bupbhO fovalテスト col(0x808080)frect(0,0,width,height)@(A,1,1,2,3,2)origin(66,72)label 0lock()if(input(0)){end}col(0xFFFF)foval(-60,-60,120,120,0,180)col(0x80FF)farc(-60,-30,120,60)for(i=0;i<5;++i){ if(++A[i]%4==0){A[i]=0while(X=X[i]=rand%54,Y=Y[i]=-abs(rand)%54,X*X+Y*Y>2809){}}}col(0xCFFFFF)for(i=0;i<5;++i){farc(X[i]-X[i]*A[i]/4-7,Y[i]-Y[i]*A[i]/4-7,14,14)}unlock(1)goto 0
695 :初心者○号 :2006/01/09(月) 10:54:18 ID:seHJbzcCO 黒い四角の中に緑の四角を表示する処理 soft2("END") label 0 color(0,0,0)rect(5,5,200,200)color(0,255,0)frect(50,50,100,100)color(50,50,50)text("2chサイコー!!",28,28) if input(0)=keysoft2 then exit endif goto 0
696 :434 ◆0F0cprE/F2 :2006/01/09(月) 13:03:00 ID:8dU9AE5wO 遊んでたら触手ができた。 soft1("EXIT")origin(w=width/2,h=height/2)X=60D=6col(0xFF00FF)label 0if(32&S=scan>>12 ){end}lock()clear(-w,-h,w+w,h+h)arc(X=X+(!!(S&4)-!!(S&2))*10,Y=Y+(!!(S&8)-!!(S&1))*10,7,7)for(H=atan(X,Y),C=0;C<D;++C){ for(B=5-10*(H>179?1-V():V();),A=C;A<D;T[A]=T[A]+B,++A){}}for(A=0;A<D;X[A+1]=X[A]+cos(T[A])/12,Y[A+1]=Y[A]+sin(T[A])/12,++A){farc(X[A],Y[A],8,8)}unlock(1)goto 0func atan(x,y){if(x){ for(t=abs(100*y/x),i=-1;t>tan(i=i+10);){}for(;t<tan(i);--i){}(y<0^x<0&&i=360-i,x<0&&i=540+i)}else{i=y<0?270:90;}return i%360}func V(){return(H+180)%360<(t=(T[C]%360+360)%360)^t>H}
697 :434 ◆0F0cprE/F2 :2006/01/09(月) 13:04:19 ID:8dU9AE5wO ちなみに腕の長さは最初の方のD=6ってとこを変えればいけます
698 :初心者○号1/2 :2006/01/09(月) 19:38:31 ID:seHJbzcCO んで。SPAML用かい? BASIC用 【無題】 lock()color(250,250,100)frect(100,130,25,25)frect(95,140,35,10)color(0,0,0)frect(95,155,35,20)frect(90,160,45,10)frect(100,155,25,35)frect(95,180,35,20)frect(100,140,10,5)frect(115,140,10,5)color(255
699 :初心者○号2/2 :2006/01/09(月) 19:41:15 ID:seHJbzcCO ,255,255)frect(90,165,10,15)color(155,155,155)frect(90,165,5,5)frect(85,165,5,15)if input(abs(rand)%100+1/1000) and keyselect thencolor(255,0,0)
700 :初心者○号2/2 :2006/01/09(月) 19:42:29 ID:seHJbzcCO 続き frect(120,165,10,5)frect(125,175,5,5)frect(115,160,5,5)elsecolor(255,0,0)farc(50,50,200,200)endifsoft1("終わり")label 0if input(0) and keysoft1 then exit endifgoto 0
701 :非通知さん@アプリ起動中 :2006/01/09(月) 22:27:40 ID:hPX7/CApO seHJbzcCO お前もう少し勉強してからこい!
702 :小4の人 :2006/01/09(月) 23:28:43 ID:seHJbzcCO label 0 farc(50,80,80,50)line(20,20,50,50)frect(0,50,50,30) soft2("END") if input(0)=keysoft2 then exit endif goto 0 こんぐらいしろよ
703 :ゆういち :2006/01/11(水) 15:47:18 ID:ReGWapAcO 遊んでたらこんなんできたが? 【落とし穴?】 label 0 soft2("Exit") farc(50,50,80,20)if input(0)=key then exit endif goto 0
704 :非通知さん@アプリ起動中 :2006/01/11(水) 17:15:07 ID:Qyk6XKY6O ( `ノ゚A゚)ヒソヒソ
705 :非通知さん@アプリ起動中 :2006/01/11(水) 21:09:05 ID:3C5mPol9O >>703 おまいのアイキュー15
706 :小4の人 :2006/01/11(水) 22:29:30 ID:ReGWapAcO >434氏は昔マリオとゆうかムリオとゆうか……を作ったんですね。
707 :非通知さん@アプリ起動中 :2006/01/11(水) 22:32:42 ID:3C5mPol9O >>706 消えろ
708 :小4の人 :2006/01/11(水) 22:40:02 ID:ReGWapAcO はいはい!!消えますよ〜だ!!(この板は優しい奴居ねーのか?すぐ「消えろ」とか「氏ね」とか「マジレス!○は氏んでよし!」とかゆう奴ばっか。氏ねとか言った奴は警察に捕まれってんだよ)
709 :非通知さん@アプリ起動中 :2006/01/11(水) 22:53:52 ID:3C5mPol9O 氏ねとは言わないが(言ってないが)、他のスレに行ってくれ。おまいは迷惑だ
710 :非通知さん@アプリ起動中 :2006/01/12(木) 19:00:26 ID:wsuQq2MmO if q<1then n=2endif
711 :非通知さん@アプリ起動中 :2006/01/12(木) 22:31:34 ID:viEdm4PvO q=rand%n
712 :非通知さん@アプリ起動中 :2006/01/13(金) 20:53:09 ID:V+EfkPvwO うめ
713 :非通知さん@アプリ起動中 :2006/01/13(金) 20:54:41 ID:V+EfkPvwO うめ
714 :非通知さん@アプリ起動中 :2006/01/14(土) 21:52:07 ID:ZFq1D/zN0 ID:ReGWapAcO 釣り下手すぎて笑えん
715 :非通知さん@アプリ起動中 :2006/01/15(日) 05:37:48 ID:aOi3Y1KLO ヴァイブ label 0 if input(0)=key2 then onvib() endif if input(0)=key1 then offvib() endif if input(0)=key3 then exit endif goto 0 ランダム数値 soft2("EXIT") A=abs(rand)B=abs(rand)C=abs(rand)a=abs(rand)b=abs(rand)c=abs(rand) label 0 text(A+"/"+a,0,12)text(B+"/"+b,0,28)text(C+"/"+c,0,42)if input(0)=keysoft2 then exit endif goto 0
716 :非通知さん@アプリ起動中 :2006/01/15(日) 10:13:17 ID:iGetx+SMO >>715 くだらんものアップするな
717 :非通知さん@アプリ起動中 :2006/01/15(日) 12:19:33 ID:aOi3Y1KLO ログ読んだ。ゆういちとかゆうくそがいるみてえだがもう居ねーよな?
718 :非通知さん@アプリ起動中 :2006/01/15(日) 13:22:28 ID:iGetx+SMO >>717 ゆういちはお前だろ。糞なソースアップしやがって
719 :非通知さん@アプリ起動中 :2006/01/15(日) 14:02:24 ID:3x0HGLaZO まあ…ゆういちにしては頑張った方だと思う ゆういち、そのランダム数値を利用してRenderModeが作られているのがわかるか?
720 :非通知さん@アプリ起動中 :2006/01/15(日) 15:21:59 ID:iGetx+SMO >>719 そうか? てかSPALMにrmode()がないのが痛い。
721 :非通知さん@アプリ起動中 :2006/01/15(日) 17:29:27 ID:aOi3Y1KLO もっと勉強して戻ってきます。
722 :非通知さん@アプリ起動中 :2006/01/15(日) 19:18:24 ID:SwfMQSLNO >>雄一 あんなもんいちいちうpすんな!!!! 普通の人ならあんなのただの通過点
723 :非通知さん@アプリ起動中 :2006/01/15(日) 20:42:54 ID:iGetx+SMO >>722 たぶん自分では凄いと思っていたんだろうな。 プログラムアップ板にも馬鹿ゆういち製の、糞なプログラムのがあった。
724 :■カラーチェッカ〜? :2006/01/15(日) 22:38:23 ID:aOi3Y1KLO soft2("EXIT") label 0 R=abs(rand)%255G=abs(rand)%255B=abs (rand)%255 text("select...四角表示",0,12)if input(0)=keyselect then clear(50,50,50,50)color(R,G,B)frect(50,50,50,50) endif if input(0)=keysoft2 then exit endif goto 0
725 :非通知さん@アプリ起動中 :2006/01/15(日) 22:59:57 ID:3x0HGLaZO うむ、ゆういちも少し分かって来たんじゃないだろうか 次はそのカラーチェッカーのRGBを自分で調整できるようにしてみろ。
726 :非通知さん@アプリ起動中 :2006/01/16(月) 00:33:02 ID:TBeqDAooO 俺以外のボーダの人いないかな。
727 :非通知さん@アプリ起動中 :2006/01/16(月) 14:34:53 ID:f5vysK2YO >>726 あげんな。虫けら
728 :434 ◆0F0cprE/F2 :2006/01/16(月) 22:17:53 ID:9O8Zma3fO 今んとこプログラム+セーブデータで7500byteぐらいでメモリの占有率は俺の携帯で400Kbyte超 もうギリギリ…ストーリー的なとこもつけようとおもってたんだけど厳しいからいらないよね?エンドレスってことで、、、 とりあえずこっちで100階までやってエラーなかったらうpるわ
729 :■カラーチェッカ〜?.改 :2006/01/17(火) 02:18:07 ID:u3xxSPg3O soft2("END") label 0 R=0r=0g=0b=0 text("■",0,12)text("R="+r,0,28)text("G="+g,0,42)text("B="+b,0,58)if input(0)=keyselect then r=abs(rand)%255g=abs(rand)%255b=abs(rand)%255color(r,g,b)text("R="+r,0,28)text("G="+g,0,42)text("B="+b,0,58) endif if input(0)=keysoft2 then end endif goto 0 自分でRGB調整は出来ないけどRGBの表示は可能。だけどselectを押すたびにどんどん数字が埋まるのですが…どうしたら良いでしょうか…
730 :非通知さん@アプリ起動中 :2006/01/17(火) 13:40:27 ID:wqnVrV1cO >>729 才能無いからプログラミングなんてやめろ
731 :非通知さん@アプリ起動中 :2006/01/17(火) 14:39:16 ID:u3xxSPg3O {ィャタ"…何時間もかけて作ったのを認められない世の中なんて…死のう…こんな世の中なんて…一切無しになれば良いのに…死のう…川に飛び込むか首吊りで…もうこんな人生!!
732 :非通知さん@アプリ起動中 :2006/01/17(火) 14:44:03 ID:u3xxSPg3O でもまだ死なない…人生最後まで生きぬいて…最後まで…よし!決めた…折れはプログラマーになってやる…
733 :非通知さん@アプリ起動中 :2006/01/17(火) 14:55:20 ID:8ny0gDpRP > 何時間もかけて作ったのに…… そんなこと言ってる時点でおまいはマに向いてない。 やめといたほうがいい。地獄をみるぞ。
734 :非通知さん@アプリ起動中 :2006/01/17(火) 15:01:37 ID:fPyq1C1JO てな事言う割に他人のプログラムのパクリじゃないか 何が何時間も掛かっただよ 努力は認めるが、重なる文字をclear()で消してtext()、 もしくは背景色でfrect()で上書きした上にtext()くらい思いつかんとな
735 :非通知さん@アプリ起動中 :2006/01/17(火) 17:49:49 ID:u3xxSPg3O label cls rmode(0,255,255) color(0,0,0) frect(0,0,width,height) rmode(1,255,255)if input(0)=keyselect then end endif goto "cls"
736 :□を動かす処理 :2006/01/17(火) 19:17:20 ID:u3xxSPg3O やっと出来た〜… X=0Y=12soft2("END") label 0 color(0,0,0)text("□",X,Y)if input(0)=keydown then Y=24color(255,255,255)text("□",0,12) endif if input(0)=keyup then Y=12color(255,255,255)text("□",0,24) endif if input(0)=keysoft2 then end endif goto 0
737 :非通知さん@アプリ起動中 :2006/01/17(火) 19:18:56 ID:u3xxSPg3O シレンぽいものも作ったけど結構重いし敵の体力減らないし…
738 :非通知さん@アプリ起動中 :2006/01/17(火) 20:26:14 ID:fPyq1C1JO 違うんだよゆういち。 下キーを押すたびにYが12増えるようにするんだ。 Y=Y+12 って具合に。 もしくはtext("□",X,Y*12)ってして、Y=Y+1 でもいい。 ここまでマスター出来たら、□の新しい位置描画、それまでの□位置の消去、そしてlock()unlock()の使い方を勉強するといい。
739 :1/2 :2006/01/17(火) 20:50:45 ID:u3xxSPg3O 最=15現=15HP=8X=HP2=8X=20Y=12x=20y=58攻=abs(rand)%8功=abs(rand)%3soft2("END") label 0 color(0,0,0)text("HP:"+最+"/"+現,0,80)text("主人公",X,Y)text("敵",x,y)text("敵HP:"+HP+"/"+
740 :2/2 :2006/01/17(火) 21:06:52 ID:u3xxSPg3O HP2,0,150)if input(0)=keydown then Y=24y=44color(255,255,255)text("主人公",20,12)text("敵",20,58) endif if input(0)=keyselect then text("主人公の攻撃!"+"敵に"+攻+"のダメージ!",0,255) endif if input(0)=keysoft2 then end endif goto 0
741 :138(元名無しと言うかゆういち) :2006/01/17(火) 21:10:03 ID:u3xxSPg3O >738-739 これが問題のシレンぽいやつ
742 :非通知さん@アプリ起動中 :2006/01/17(火) 21:46:50 ID:wqnVrV1cO >>741 2次元配列も知らんやつに作れるかよボケ茄子
743 :非通知さん@アプリ起動中 :2006/01/18(水) 01:13:00 ID:S7fn8y86O >725さんの言ってたRGB操作できる版 r=0g=0b=0soft2("END") label 0 text("■",0,58)if input(0)=keyup then r=r+10color(r,g,b)text("■",0,58) endif if input(0)=keyright then g=g+10color(r,g,b)text("■",0,58) endif if input(0)=keyleft then b=b+10color(r,g,b)text("■",0,58) endif if input(0)=keysoft2 then end endif goto 0
744 :138 :2006/01/18(水) 01:16:35 ID:S7fn8y86O おっと名前載せ忘れてた。(sageもww
745 :138 :2006/01/18(水) 02:53:26 ID:S7fn8y86O >742 2次元配列はしらんが配列はこうやろ? 変数 [index] こうやろ?ちゃんとサイト見てきたもん!
746 :138 :2006/01/18(水) 03:38:57 ID:S7fn8y86O 700超したソース作ったけどエラーで強制終了…また作り直しかよ…
747 :非通知さん@アプリ起動中 :2006/01/18(水) 14:03:44 ID:CuTnGzyYO >>745 お前は屑で馬鹿で間抜けだな。 しかも、テメー、なんかタメ口だし本当に屑やろうだな。 ただの配列を二次元配列とかいってやがるプゲラッチョww 本当プログラマーにならない方がいいよあんた。 こういっちゃなんだけどプログラマーとしての才覚がない。 まずセンスが無い、それといちいち愚痴を溢すなマジで、10時間なんて当たり前。 皆努力してるのにお前は何様だ。 あと訳もわからずあげんな
748 :138 :2006/01/18(水) 14:48:28 ID:S7fn8y86O 俺の気持ちも知らずにズケズケベラベラズケズケベラベラと〜!!とここで怒ってもしょうがないので…他でやろ〜ね〜(`〜´)
749 :138 :2006/01/18(水) 14:51:41 ID:S7fn8y86O >747 荒すなら他でやれや!あんゴルァ$OT
750 :非通知さん@アプリ起動中 :2006/01/18(水) 14:53:41 ID:dcZh2QzMO iro[0]=40 iro[1]=80 iro[2]=120 iro[3]=160 iro[4]=200 iro[5]=240 label 0 s=scan color(iro[R],iro[G],iro[B]) text("■■■ @色成分 R"+iro[R]+"/G"+iro[G]+"/B"+iro[B],20,20) if input()and key1 and R<5 then R=R+1 elseif s=key4 and R>0 then R=R-1 endif goto 0 上の6行が二次元配列。 どうやって使ってるか理解してみれ。
751 :138 :2006/01/18(水) 14:55:58 ID:S7fn8y86O そうさ…俺は人のコピーしてやって面白かったら保存しっ放しで…そう…俺はクズ人間なんだ…面白くなかったら消し…やれなかっても消し…もう謝るよ…こんな人生に生まれて来てすいません!!
752 :非通知さん@アプリ起動中 :2006/01/18(水) 15:00:53 ID:dcZh2QzMO すまんな、こっちで。 iro[0]=40 iro[1]=80 iro[2]=120 iro[3]=160 iro[4]=200 iro[5]=240 label 0 s=scan clear(0,0,width,height) color(iro[R],iro[G],iro[B]) text("■■■ @色成分 R"+iro[R]+"/G"+iro[G]+"/B"+iro[B],20,20) if input()and key1 and R<5 then R=R+1 elseif s=key4 and R>0 then R=R-1 endif goto 0
753 :非通知さん@アプリ起動中 :2006/01/18(水) 15:05:01 ID:dcZh2QzMO 下から4行目くらいのところ、一部iMonaでは 半角の >0 が >1 になるみたいだ すまんが自分で書き換えてくれ
754 :非通知さん@アプリ起動中 :2006/01/18(水) 15:29:38 ID:CuTnGzyYO >>751 まさにその通りだ、今のお前ではなんの飛躍も無く終わるだろうな。
755 :434 ◆0F0cprE/F2 :2006/01/18(水) 17:31:06 ID:RRtnZCsvO 何もそこまで言わんでいいがな… >>750 それは一次元配列。二次元配列ていうのは X[i][j] ↑こういうのを言う。つまり[]の数がその配列の次元 ちなみにSPALM/携帯BASICでは何次元配列でも可能。もちろん少ない方が処理は軽い。[]内が数字じゃなくても可。
756 :非通知さん@アプリ起動中 :2006/01/18(水) 18:31:05 ID:CuTnGzyYO >>755 唯一、まともにプログラミング出来そうな方ですね。 自分なら二次元配列を使ってRPG系ゲームのアイテム管理等に使います。 でも確かに使う場所を選びますね、動作速度に影響が出るのが一番恐いので‥
757 :非通知さん@アプリ起動中 :2006/01/18(水) 19:09:15 ID:dcZh2QzMO >>756 うわ…やっちまったorz 携帯BASICは久しく触ってなかったから思い違いしてた フォローありがトン というわけでゆういち、すまんかった。忘れてくれ… 携帯Bで配列は難しいな…
758 :非通知さん@アプリ起動中 :2006/01/18(水) 19:10:27 ID:dcZh2QzMO 間違えた… × >>756 ○ >>755
759 :138 1/3 :2006/01/18(水) 19:51:48 ID:S7fn8y86O RGBが789でも操作できる版 r=0g=0b=0soft2("END") label 0 text("■■■",0,12)text("←B+↑R+→G+○リセット↓RGB-",0,28)text("7Rmax8Gm
760 :138 2/3 :2006/01/18(水) 19:52:37 ID:S7fn8y86O ax9Bmax",0,42)if input(0)=keyup then r=r+20color(r,g,b)text("■■■",0,12) endif if input(0)=keyright then g=g+20color(r,g,b)text("■■■",0,12) endif if input(0)=keyleft then b=b+20color(r,g,b)text("■■■",0,12) endi
761 :138 3/3 :2006/01/18(水) 19:54:18 ID:S7fn8y86O f if input(0)=keydown then r=r-20g=g-20b=b-20color(r,g,b)text("■■■",0,12) endif if input(0)=keyselect then r=0g=0b=0color(r,g,b)text("■■■",0,12) endif if input(0)=key7 then r=255color(r,g,b)text("■■■",0,12) endif if input(0)=
762 :138 4/4 :2006/01/18(水) 19:56:17 ID:S7fn8y86O key8 then g=255color(r,g,b)text("■■■",0,12) endif if input(0)=key9 then b=255color(r,g,b)text("■■■",0,12) endif if input(0)=keysoft2 then end endif goto 0 3/3のはずが4/4になってしまった…
763 :138 :2006/01/18(水) 20:08:34 ID:S7fn8y86O 間違えてた × text("■■■",0,12)text("←B+↑R+→G+○リセット↓RGB-",0,28)text("7Rmax8Gmax9Bmax",0,42) ○ color(r,g,b)text("■■■",0,12)color(0,0,0)text("←B+↑R+→G+○リセット↓RGB-",0,28)color(0,0,0)text("7Rmax8Gmax9Bmax",0,42) ×のままやると7と8と9を押したら何もなくなります。(○を押したらすぐ治るけどww
764 :138 :2006/01/18(水) 21:28:11 ID:S7fn8y86O ここまで書き込みがないのに驚いたので100ヘェね。所でうp板のブロック崩し FOR 携帯BASIC ってだれがうpしたの?
765 :非通知さん@アプリ起動中 :2006/01/18(水) 21:33:49 ID:CuTnGzyYO >>764 お前物凄く偉そうだよな、それが人に物を聞く態度かと言いたい。
766 :138 :2006/01/18(水) 21:53:46 ID:S7fn8y86O じゃあ「所でうp板のブロック崩し FOR 携帯BASIC は誰がうpしたのですか?優しい方は答えてください。お願いします。」でいいんですかそうですか。
767 :非通知さん@アプリ起動中 :2006/01/18(水) 22:06:54 ID:CuTnGzyYO >>766 まだ足りない。 お前の様な能無し愚民は、もっと我々高等人類様に尊敬の意を示せ。
768 :非通知さん@アプリ起動中 :2006/01/18(水) 22:10:16 ID:CuTnGzyYO 『でいいんですかそうですか』自己解釈してるお前は、まさに進歩しない人間の典型。
769 :138 :2006/01/18(水) 22:57:58 ID:S7fn8y86O じゃあ「聞きたいことが在るんですけど…皆様うp板にブロック崩し FOR 携帯BASIC をうpした人を知りませんか?このクズで虫けらな俺に教えてくれださい!お願いします!」でいいんですかそうですか。
770 :138 :2006/01/18(水) 23:03:00 ID:S7fn8y86O >お前の様な能無し愚民 この言い方は酷い。あと高等人類と自分の事を言うようなやつの方が能無し愚民だと思う。逆に人間を怒らしたらどうなるか知らないような人間はお前の方だと思う。
771 :138 :2006/01/18(水) 23:04:00 ID:S7fn8y86O >人間を怒らしたらどうなるか知らないような人間はお前の方だと思う。 これは言い過ぎた。
772 :非通知さん@アプリ起動中 :2006/01/18(水) 23:04:15 ID:CuTnGzyYO >>769 てか今思ったんだけど、お前は人間に質問するな。
773 :138 :2006/01/18(水) 23:13:25 ID:S7fn8y86O >772 偉そうにしてんのはお前じゃねーの?俺は携帯BASIC初心者なんだぞ?優しい心が一つもねーな。せめて >お前の様な能無し愚民 これは言い過ぎた。 ぐらいいえよ。お前、大統領じゃないくせして偉そうにして、お前優しくしたことね〜だろ?$OT$OT
774 :138 :2006/01/18(水) 23:18:04 ID:S7fn8y86O >1を見ろ!>1を! ろぐだが>823センセは優しかったみてーだな…>823センセが残ってたらな〜…まぁムリオを作った>434氏が残ってただけでうれしいぜ
775 :非通知さん@アプリ起動中 :2006/01/18(水) 23:24:51 ID:CuTnGzyYO 大統領なら言ってもいいのか‥ まあ、その様な解釈しか出来ないお前は、もはや愚民とも言えない。 お前は言葉を話せる真菌類だ。
776 :非通知さん@アプリ起動中 :2006/01/18(水) 23:29:28 ID:CuTnGzyYO てか真菌類に失礼だったな。 ここを借りて、改めて謝る。すまない真菌類の諸君。 こいつは、愚の塊。
777 :138 :2006/01/18(水) 23:30:59 ID:S7fn8y86O >お前は言葉を話せる真菌類だ。 ついでにお前は言葉を話せ、携帯もってて、2ch来てる真菌類だ。にして
778 :非通知さん@アプリ起動中 :2006/01/18(水) 23:38:49 ID:CuTnGzyYO お前はこれ迄アゲ荒らし行為、自作自演等をしてきたが、今までの書き込みでの話し方を改め謙虚になるのなら、普通に会話してもいい。
779 :434 ◆0F0cprE/F2 :2006/01/18(水) 23:43:19 ID:RRtnZCsvO もう何でもいいがこれ以上スレを荒らすんだったらよそでやってくれ、ここのレベルが下がる… ちなみにブロック崩しは俺ね
780 :138 :2006/01/18(水) 23:45:00 ID:S7fn8y86O 謙虚になるかもな。
781 :非通知さん@アプリ起動中 :2006/01/18(水) 23:52:46 ID:CuTnGzyYO >>779 不快な思いをさせてすいませんでした。 PG板に戻ります。 でも>>138 もかなりの荒らしだと思います。
782 :138 :2006/01/19(木) 00:48:53 ID:4ptTG2NLO >779 ほんとにすいませんでした。 >781 ほんとすまねぇ……
783 :138 :2006/01/19(木) 00:49:38 ID:4ptTG2NLO >781 >ほんとすまねぇ…… 間違った 本当にすまなかった…だった
784 :138 :2006/01/19(木) 00:51:25 ID:4ptTG2NLO 所でPG板て?
785 :138 1/2 :2006/01/19(木) 03:54:03 ID:/9uFrcyeO soft2("END") label 0 text("■",0,12)text("R="+r,0,28)text("G="+g,0,42)text("B="+b,0,58)if input(0)=keyselect th
786 :138 2/2 :2006/01/19(木) 03:55:21 ID:/9uFrcyeO en r=abs(rand)%255g=abs(rand)%255b=abs(rand)%255clear(0,12,90,100)text("R="+r,0,28)text("G="+g,0,42)text("B="+b,0,58)color(r,g,b)text("■",0,12) endif if input(0)=keysoft2 then end endif goto 0 操作説明はうp板にて
787 :138 :2006/01/19(木) 06:28:09 ID:/9uFrcyeO X=0Y=58x=12y=28 label 0 text("人@下で下へ",X,Y)text("人A上で下へ",x,y)if input(0)=keydown then Y=Y+12clear(0,0,280,280)text("人Aの番です",0,80) endif if input(0)=keyselect then end endif if input(0)=keyup then y=y+12clear(0,0,280,280)text("人@の番です",0,80) endif goto 0
788 :138 :2006/01/19(木) 22:31:34 ID:/9uFrcyeO X=0Y=255 label 0 text("人",X,Y)text("現在地:"+X+"/"+Y,0,12)if input(0)=key3 then X=X+12Y=Y-12clear(0,0,280,280)text("人",X,Y)text("現在地:"+X+"/"+Y,0,12) endif if input(0)=key0 then end endif goto 0 現在地:X/Yに表示されている場所 例)現在地:0/255 に人はいます。
789 :非通知さん@アプリ起動中 :2006/01/19(木) 23:28:39 ID:8dParTjnO >>138 パクリ乙
790 :138 1/2 :2006/01/20(金) 17:11:52 ID:jjXObn8VO X=0Y=12 label 0 text("人",X,Y)text("現在地:"+X+"/"+Y,0,255)if input(0)=keydown then Y=Y+12clear(0,0,280,280)text("現在地:"+X+"/"+Y,0,255) endif if input(0)=keyselect then end endif if input(0)=keyup then Y=Y-12clea
791 :138 2/2 :2006/01/20(金) 17:13:43 ID:jjXObn8VO r(0,0,280,280)text("現在地:"+X+"/"+Y,0,255) endif if input(0)=keyright then X=X+12clear(0,0,280,280)text("現在地:"+X+"/"+Y,0,255) endif if input(0)=keyleft then X=X-12clear(0,0,280,280)text("現在地:"+X+"/"+Y,0,255) endif goto 0
792 :434 ◆0F0cprE/F2 :2006/01/20(金) 17:41:18 ID:uNh/U71FO 正直同じようなのいくつも貼られるとちょっと邪魔に感じる。 そんなに頻繁にソースうpするとまたいろいろ言われるぞ。
793 :138 :2006/01/20(金) 19:17:01 ID:jjXObn8VO 572文字位のシレン風のを作った。だけど…上下左右に動かしたらランダムで満腹度が減るだけのやつ。シレン作ってる人は使ってください。(コピー可)
794 :138 :2006/01/20(金) 22:37:44 ID:jjXObn8VO マジのシレン作ってたけど挫折…代わりにシレン作った時の副産物を置いときます。 【迷路?】 text("■",0,12)rect(0,0,70,70)text("□",60,75)input() ■がスタートで□がゴール。(未完成だがww
795 :非通知さん@アプリ起動中 :2006/01/20(金) 22:40:21 ID:xbpxClg2O >>138 お前もう来るなウゼー
796 :非通知さん@アプリ起動中 :2006/01/21(土) 21:02:37 ID:C6dZ6qx6O >434氏の惑星簡易発生機は出来なかったけどやりたいから自分で作りました。(すぐに緑の惑星?が見れるがww [緑の惑星発生機] color(0,0,0)frect(-1,-1,280,280)color(0,255,0)farc(50,50,150,150)input() みぢかいね。
797 :434 ◆0F0cprE/F2 :2006/01/21(土) 21:29:07 ID:WA5roeSEO 小四にはやっぱプログラミングは早すぎたんだよ、惑星って… HSPっていうプログラム言語なら10歳でゲーム作ってる人もいるからそっちやってみたら?>ユウイチ
798 :非通知さん@アプリ起動中 :2006/01/21(土) 21:32:55 ID:7ApEkWC4O とにかく馬鹿ゆういちは、ここから消えろ
799 :非通知さん@アプリ起動中 :2006/01/21(土) 21:53:36 ID:N3SskxNzO あれ、本当にゆういちって小4なのか…? まぁ大分作り方が分かってきたみたいだし次は簡単なオリジナルゲームを作ってみろ。 ただし、自力で完成させられるまではこのスレに書き込まない事。 自分のアイデアを実現させる工夫と努力をするんだ。 最初はパクリでもいい。そこからいろいろいじって学ぶ事もある。 学ぶ気持ちがあれば、やがては自分の力になるんだよ。
800 :非通知さん@アプリ起動中 :2006/01/21(土) 21:54:43 ID:7ApEkWC4O forの文の意味も分からない奴が消えろ
801 :非通知さん@アプリ起動中 :2006/01/21(土) 22:49:39 ID:UJcLDmCkP いきがってた厨房を優しく諌めながら生暖かく見守るスレはここですか?(・∀・;)
802 :ワンキー系・引きつける程スコアアップ :2006/01/21(土) 23:24:26 ID:N3SskxNzO 't=競技時間' t=500 p=100 h=120 label 0 if h<0 then m=m+1 h=120 endif h=h-3 t=t-1 if scan=keyselect and p>40 then p=p-3 elseif p<100 then p=p+3 endif if p=100 then s=s+(120-h) endif lock() clear(0,0,150,120) text("リ",25,p)text("┏┓",h,96)text(s+"pts / TIME:"+t,10,20) if p>93 and h<30 and h>15 then goto 1 elseif t=0 then goto 1 endif unlock(1) goto 0 label 1 text("Game set!",40,60)text(s+" PTS / "+m+" HDL",2,75) unlock(1)sleep(999)clearinput()input()
803 :非通知さん@アプリ起動中 :2006/01/22(日) 11:26:51 ID:PAU9zFzaO だってHSPどこにも売ってないし買ってもらえないし
804 :非通知さん@アプリ起動中 :2006/01/22(日) 12:14:26 ID:qciC5ktyO >>803 消えろ
805 :非通知さん@アプリ起動中 :2006/01/22(日) 17:56:27 ID:PAU9zFzaO HSPダウンロード出来へん
806 :非通知さん@アプリ起動中 :2006/01/22(日) 18:24:01 ID:PAU9zFzaO *と#をendにしたい場合はどうすれば委員でしょうが(しょうかww
807 :非通知さん@アプリ起動中 :2006/01/22(日) 18:38:00 ID:+LskxlE7O 例1… if input()and keyast then exit endif 例2… if scan=keyast then exit endif *…keyast #…keypound
808 :非通知さん@アプリ起動中 :2006/01/22(日) 20:47:56 ID:qciC5ktyO >>806 消えろ
809 :非通知さん@アプリ起動中 :2006/01/22(日) 22:26:51 ID:PAU9zFzaO X=0 label 0 lock()text("◆",X,12)if input(0)=AI then X=X+1sleep(1000)clear(0,0,280,280) endif if input(0)=key0 then end endif unlock(1) goto 0
810 :非通知さん@アプリ起動中 :2006/01/22(日) 23:41:33 ID:qciC5ktyO >>809 消えろ
811 :非通知さん@アプリ起動中 :2006/01/23(月) 00:17:02 ID:hImkorrAO Xを50で止めたりタイムを0で止めてから文字を表示はどうすれば委員でしょうが(聞き飽きたww
812 :非通知さん@アプリ起動中 :2006/01/23(月) 01:03:25 ID:Pl9QcrkiO >>811 自分で考えろ屑
813 :非通知さん@アプリ起動中 :2006/01/23(月) 01:10:47 ID:hImkorrAO X<50 こんな感じ?それとも X>50 こんな感じ?
814 :非通知さん@アプリ起動中 :2006/01/23(月) 01:18:17 ID:Pl9QcrkiO >>813 消えろ
815 :非通知さん@アプリ起動中 :2006/01/23(月) 01:30:23 ID:hImkorrAO >813 えと.X>50はX>と50ですから>50じゃありません。
816 :非通知さん@アプリ起動中 :2006/01/23(月) 15:04:30 ID:Pl9QcrkiO >>815 消えろ
817 :非通知さん@アプリ起動中 :2006/01/23(月) 15:12:38 ID:6LiDyvOCO 何だろう、この違和感…ふ●っくて…
818 :非通知さん@アプリ起動中 :2006/01/23(月) 16:15:32 ID:hImkorrAO ふ●っく?
819 :434 ◆0F0cprE/F2 :2006/01/24(火) 15:48:15 ID:NjEXI8sDO 一応SPALM用ダンジョンRPG完成したけどどこにアップすればいいかな?ファイルが8個なんだが >>ユウイチ HSPは無料だ。パソコンでダウンロードすれば夢の世界が広がってるぞ。親切に教えてくれる人もたくさんいるし
820 :非通知さん@アプリ起動中 :2006/01/24(火) 17:42:17 ID:NgMgPUZeO 俺…携帯しか持ってへんわ…
821 :非通知さん@アプリ起動中 :2006/01/24(火) 20:08:32 ID:v+238VGwO >>820 なら消えろとしか、言い様が無い。お前はもう少しましなのを作ってからこの板に再び来い。
822 :非通知さん@アプリ起動中 :2006/01/24(火) 22:40:54 ID:v+238VGwO >>819 ここでいいと思われ。 でオマイを、中々の使いとみこんでローグについて聞きたい事があるんだが。 frectをランダムに置いて部屋を作ってるのか? それともsubstringsで空間を四角く囲んで、その中を歩けると言う事にすればいいのか? てかローグのソースはどうなってるんだ?
823 :434 ◆0F0cprE/F2 :2006/01/25(水) 00:11:21 ID:E8o7NDALO 残念ながら俺のは通路式。棒倒し法って言う簡単なアルゴリズムで迷路を生成してる 表示も3Dだから通路式の方が都合がよかったというのもあるな 明日あたりうpすると思う
824 :434 ◆0F0cprE/F2 :2006/01/25(水) 15:23:16 ID:E8o7NDALO 「単純☆ダンジョン」 #init#M[1][i+x][j+y]=M[0][j+y][i+x]=0}}trgt(M)lock()clear(0,0,122,58)C()rect(0,0,121,57)for(i=0;i<120;i=i+8){for(j=0;j<56;j=j+8){switch(M[1][i>>3 ][j>>3 ]){case 0:frect(i+1,j+1,8,8)break; case 3:frect(i+3,j+3,4,4)frect(i+4,j+2,2,6)clear(i+4,j+3,1,3)}}}trgt(off)M[1][14][6]=2origin(w2,h2)soft1("EXIT")soft2("MENU")label 1if(1<<18&A){gosub"図"}lock()if(CL()+C()+1<<17&A){end}B=0if(1&A=A>>12 ){ if(M[j=V&1][P[j]+H[V]][P[1-j]]){P[j]=P[j]+H[V]B=1}}elsif(A&14){V=1+V+A+A/8&3}text("方位:".strat(N,V).";座標(".P[1].",".P[0].")",-66,-72,0)line(-62,-62,62,62)line(-62,62,62,-62)for(i=0;i<5;++i){ if(j=H[4+i],M[K=V&1][P[K]+i*H[V]][P[!K]]){for(k=i>>2 <<1;k<2;++k){if(M[K][P[K]+i*H[V]][P[!K]+H[k]*(1-(V>>1 <<1))]){rect(-H[4+i+k],-l=H[5+i],l+j,l+l)}}rect(-j,-j,j+j,j+j)}else{frect(-j,-j,j+j+1,j+j)break}}farc(-10,40,20,5) col(0x80FE)frect(-8,12,16,30)unlock(1)if(I=M[1][P[1]][P[0]],B&&I==1){if(R(2000)<EN){gosub"戦"}elsif(D[22]&2){D[7]=D[7]-HP/100}if(D[7]<1){goto"死"}}#sub##sub3#
825 :434 ◆0F0cprE/F2 :2006/01/25(水) 15:24:19 ID:E8o7NDALO 「init」 makeimg(M,122,58)@(m,"戦う","防御","魔法","アイテム")@(E,"(`・ω・´)","シャキーン",10,16,12,8,7,14,5,"Γ(◎±◎∂","タルー",12,5,5,16,16,9,14,"ミ゚Д゚ 彡","フサギコ",15,8,16,7,14,7,5,"∠@∀@∇","チャメコ",7,9,9,11,16,12, 13,"〇£〇ヶ","プリマ",20,20,0,20,0,10,20,"( ゚Д ゚","ソリタリー")w=132h=144@(H,-1,1,1,-1,62,25,15,11,8)@(IM,"ポーション","万能薬","破砕グラブ","鉄壁","水晶玉","マモノ餌","TNT爆弾","見透しの巻物","透明マント","幸せの風") @(IP,1,3,4,4,6,6,10,10,10,200)N="北東南西"frect(C(),0,2*w2=width/2,2*h2=height/2)labelーorigin(w2,h2)if(!load()){@(D,5,5,5,5,5,5,1,300,0,1,0,0,9,9,9,9,9,9,9,9,9,9,0,0)V()}k=load() for(i=0,j=-1;i<24;D[i++]=substr(k,++j,-j+j=index(k,",",j))){}get=tick/1000-D[11]V=-1--D[9]LV=D[6]HP=LV*LV+237*LV+362>>1 label 0gc()if(m=++D[9]%10==0&&V>=0){gosub 9}EN=100 for(P[V=1]=P[0]=B=i=0;i<105;M[1][i%15][i/15]=M[0][i/15][i++%15]=1){}for(i=1;104>i=i+1+R(40);M[1][i%15][i/15]=3+(rand&1)){} for(i=1;i<15;i=i+2){for(j=1;j<7;M[1][i][j]=M[0][j][i]=0,j=j+2){while(!M[1][i+x=rand%2][j+y=x?0:(rand&1)*2-1;]){}
826 :434 ◆0F0cprE/F2 :2006/01/25(水) 15:25:22 ID:E8o7NDALO 「sub」 I<3&&A=input();goto I label 2if(!B){goto 1}clear(-27,-15,54,30)C()rect(-28,-16,55,31)text("1.おりる",-24,0,32)text("2.やめる",-24,1,0)unlock(1)B=0while(!(A=input()&6)){}goto A>>2 label図lock()drawimg(M,-61,-71,CL(C()))for(i=0;i<6;++i){text(substr("Lv HP EXPFLRGLDTIM",i*3,3).":".D[i+6],0,i*12-12,0)text(strat("強耐魔精早運",i).":".D[i],-64,i*12-12,0)}text("ST",-64,60,0)for(i=0;i<4;++i){ if(D[22]&1<<i){text(strat("闇毒混沈",i),-52+i*12,60,0)}}text("MaxHP:".HP,0,60,0)soft1("SAVE")soft2("ITEM")C()while(64!=(j=input(0)>>12 )&&(j&32&&j=V(D[11]=k),1)){lock()clear(P[1]*8-60,P[0]*8-70,8,8) clear(24,48,42,12)col(0xFFFFFF)rect(-65,-13+12*a=D[23],12,12)C()rect(-65,-13+12*D[23]=a+(j&8&&5>a)-(j&1&&a>0),12,12)text((k=tick/1000-get)/3600.":".k/60%60.":".k%60,24,48,0) farc(P[1]*8-60,P[0]*8-70,8*i=!i,8)unlock(1)}m=0label 9soft1(m?"買う":"使う";)soft2("戻る")lock()CL()C()for(i=1;i<11;++i){text(IM[i-1],-52,i*12-72,0)} text(m?"SHOP":"ITEM";,0,-72,i=1)line(-66,-60,66,-60)text(D[10],66,60,8*m)k=UC=0#sub2#
827 :434 ◆0F0cprE/F2 :2006/01/25(水) 15:26:18 ID:E8o7NDALO 「sub2」 while(!(J&32&&BT&&UC)&&64!=J=input(0)>>12 ){lock()clear(-66,-59,12,131)text("*",-65,-60+12*k=k+(J&8&&9>k)-(J&1&&k>0),0)if(J&32){if(m&&0<=j=D[10]-IP[k]*50){D[k+12]++ clear(0,60,66,12)text(D[10]=j,66,60,8)}elsif(D[k+12]*!m){UC=1D[k+12]--i=1switch(k){case 1:D[22]=0break;case 4:M[3]=M[3]*3/2case 2:case 3:M[j=k-2]=M[j]*3/2PD=PD|k==3break;case 6: K=V&1BT||M[1][x=P[1]+K*H[V]][y=P[0]+!K*H[V]]>2&&IT(x,y);D[31]=0break;case 0:(D[7]=D[7]+(M[3]+M[2])*18)>HP&&D[7]=HP;break;case 7:trgt(M)C()for(j=1+200*STA=BT;j<104;++j){ if(M[1][a=j%15][b=j/15]==4){farc(a*8+1,b*8+4,8,4)}}trgt(off)origin(w2,h2)break;case 8:if(BT){S[l=0]="逃げ出した!"}EN=EN>>!BT break;case 5:EN=EN<<!BT D[29]=Mh break;case 9:for(D[22]=j=0;j<6;++D[j++]){}D[7]=HP}}}clear(30,-59,36,119*i)for(j=-5;i&&j<5;++j){text(m?IP[j+5]*50:D[j+17];,66,j*12,8)}i=0unlock(1)} soft1("EXIT")soft2("MENU")}func CL(){clear(-66,-72,w,h)}func C(){col(0x400040)}label 3for(i=0;i<10&&10-i<R(15);++i){}D[j=10*!i+!!i*11+i]=D[j]+(i?1:j=R(501);)
828 :434 ◆0F0cprE/F2 :2006/01/25(水) 15:27:15 ID:E8o7NDALO 「sub3」 IT(P[1],P[0],1)text((i?IM[i-1]:j."GLD";)."を手に入れた!",0,-6,1)input()goto 1label 4switch(2+j=rand%3){case 0:case 4:MS=(j-2?(j=5,"金"):"HP";)."半減!"D[j+5]=D[j+5]>>1 break;case 3:case 1: (D[9]=D[9]+j*(1+R(10)))<1&&D[9]=0;MS=D[9]+1."階へワープ!"break;case 2:MS="ステータス異常!"D[22]=15}IT(P[1],P[0],1)text(MS,0,-6,1)sleep(1500)goto!(abs(j)==1)func V(){for(_="",j=0;j<24;_=_.D[j++].","){} save(_)}label戦BT=1S=CL()C()clearkey()soft1("")soft2("")for(ExP=D[31]=Mh=((237+i=D[9])*i+362+rand%i>>1 )*E[2+ET=R(17)/4*9]/10,D[46]=j=STA=0;j<6;ExP=ExP+D[24+j]=(4+i)*E[ET+3+j]/10+rand%i/2,++j){} copy(D,d[0]=d[24]=PD=0,M,0,28)clip(TY=MX=-TX=66,-72,w,h)MY=30AT=(D[28]<D[4])*24BG=0xECD6B4while(BT){lock()line(CL()-66,36,w,36)col(BG)text(E[ET],TX,TY,0)text(D[31]."/".Mh.":".D[46],60-999*!STA,-54,8) col(BG>>1 )text(E[45],MX,MY,32)text(D[7]."/".HP.":".D[22],-60,6,0)switch(A=input(C()),S){case 0:if(!TX=TX-6){S=2S[j=0]=E[ET+l=k=1]."が現れた!"}break;case 1:#sub4#
829 :434 ◆0F0cprE/F2 :2006/01/25(水) 15:28:14 ID:E8o7NDALO 「sub4」 if(AT){ET?ET-9?ET-18?ET-27?Z=2*(D[31]<Mh/2)+R(2):D[31]<Mh?Z=3:Z=R(2);;:(Z=!!R(5))||(Z=!R(2)*3)||Z=R(2);:(Z=!!R(10)*2)||(Z=R(3))&&++Z;:(Z=!R(10))&&Z=1+R(3);S=2S[j=0]=E[ET+k=1]."のターン!!"l=3+Z}else{ rect(-66,25,48,48)clear(-66,26,48,48)for(a=0;a<4;++a){text(m[a],-48,26+a*12,0)}if(16&a=A>>12 ){S=2k=1l=Z+3S[j=0]="ソリタリーのターン!!"}text("*",-60,26+12*Z=Z+(a&8&&Z<3)-(a&1&&Z),0) (D[7]=D[7]+d[0]*HP/10)>HP&&D[7]=HP;}d[AT]=0break;case 2:if((3>k-j=j+(1<<16==A))&&j){Z=0if(1==S=l){(D[22+AT]&2&&!ヘ)?(D[a=7+AT]=D[a]-D[33-a]*6,S=ヘ=2,S[j=!k=1]="毒のダメージ!"):e=24-AT=24-AT+ヘ=0;} if(BT=D[7]>0&&l>0,2<S){if(4&i=D[22+AT]){S=3e=R(2)*24}if(i&8&&S==5){S=2k=l=1S[j=0]="魔法失敗…"}}if(BT&&D[31]<1){S=2l=j=0k=3TX=99@(S,E[ET+1]."を倒した!",D[29]*10."GLD入手!",ExP/10."の経験値を得た","レベルアップ!") D[10]=D[10]+D[29]*10D[8]=D[8]+ExP/10while(HP<=D[8]){a=++D[6]D[8]=D[8]-HP D[7]=HP=a*a+237*a+362>>1 for(i=!D[D[23]]++;i<6;D[i++]++){}D[22]=0k=4}}}else{for(i=0;i<3&&i<k;++i){text(S[i+j],-66,36+i*12,0)}}break;case 3:#sub5#
830 :434 ◆0F0cprE/F2 :2006/01/25(水) 15:29:07 ID:E8o7NDALO 「sub5」 if(D[AT+22]&1&&(D[4]<D[28]||rand%9)){k=1S[0]="攻撃失敗…"}else{(i=rand%D[9]+(14+M[AT]/8)*M[AT]-(6+M[e+1]/12)*M[e+1]>>d[e])<0&&i=0;(D[k=7+e]=D[k]-i)<0&&D[k]=0;@(S,E[e?ET+1:46;]."に".i,"のダメージ")D[k=22+e]=D[k]&~4k=2} S=2l=1j=0break;case 4:d[AT]=l=k=1S[j=0]=E[AT?ET+1:46;]."は身を固めた"S=2break;case 5:(i=rand%D[9]+(14+M[AT+2]/8)*M[AT+2]-(6+M[e+3]/12)*M[e+3]>>d[e])<0&&i=0;(D[k=7+e]=D[k]-i)<0&&D[k]=0; @(S,E[e?ET+1:46;]."に".i,"のダメージ")`=0if((!PD||--PD||e)&&!d[e]&&abs(rand%i)>D[e+5]-D[AT+5]){D[22+e]=D[22+e]|`=R(16)&R(16)}gosub 20l=1S=k=2j=0break;case 6:if(AT){ D[31]=(i=D[31]+D[27]*14)>Mh?Mh:i;D[46]=D[46]&~R(16)S[0]=E[ET+1]."はHP・ST回復!"k=l=1S=2}else{gosub 9k-8?(S[l=1]="を使った",S[0]=IM[k],k=2):k=1;S=UC+1}j=0soft1("")soft2("")} unlock(1)}soft1("EXIT")soft2("MENU")}#sub6#
831 :434 ◆0F0cprE/F2 :2006/01/25(水) 15:30:00 ID:E8o7NDALO 「sub6」 func IT(X1,Y1,W1){C()frect(-67,-10,w+2,20*W1)clear(-66,-9,w,18*W1)trgt(M)clear(X1*8+1,Y1*8+M[1][X1][Y1]=1,8,8)trgt(off)origin(w2,h2)}label死C()frect(-66,-72,w,h)col(0xFFFFFF)text("You are deleted",0,-12,1) text("from this world...",0,0,1)save(0)goto"ー"func R(。){return abs(rand)%。}label 20gc()for(A=!Z=R(8)+1;++A<23;){lock()clear(-66,-72,132,108)if(`&1){for(i=5;i>=0&&0<j=(i*3+9-A)*A>>1 ;--i){ col(i*0x321F32)foval(-j,-j,j<<1,j<<1,0,180)col(i*0x220022)farc(-j,-j/2,j<<1,j)}}C()text(E[e?ET:45;],rand%6,rand%6-6,1)col(rand)text("◆",rand%16,rand%16-6,1)if(`&2){col(0xA000) for(j=(22-A)*A,i=A*2;360>i;i=i+45){farc(cos(i*Z)*j/z=320-sin(i)>>1 ,cos(i+j)*j/z>>1 ,1000/z,1000/z)}}if(`&4){col(0xFFFF00)for(i=0;i<3;++i){text("★",cos(j=i*120+A*9)/5,sin(j)/10-20,3)}} if(`&8){col(255<<16)for(i=k=0,l=A*2-44;i<720&&A>i/48;i=i+144){line(k,l,k=sin(i+144)*(j=22-A<<1)/100,l=-cos(i+144)*j/100)}}unlock(1)}}
832 :434 ◆0F0cprE/F2 :2006/01/25(水) 16:10:34 ID:E8o7NDALO 操作方法とか ダンジョン 左上に現在地とかが表示される。(14,6)に行くと下へ行くか出るので1か2で選ぶ 上で前進/左右で振り向き/下で後ろ向き/ソフト1で終了/ソフト2でメニュー画面 メニュー 上にあるのがマップ ■…壁/コイン…アイテム/落とし穴…トラップ/点滅…自分 左は上から順に攻撃力・防御力・魔力・魔防力・素早さ・運・ステータス [ステータスは闇…戦闘中命中が下がる/毒…戦闘中や探索時にHPを削られる/混乱…戦闘で必ず物理攻撃を選択し敵味方構わず攻撃。物理攻撃を受けると治る/沈黙…魔法が使えない] 右は上から レベル・HP・経験値・階・金・時間・最大HP(次のレベルアップに必要な経験値)。レベルアップすると各ステータスが1UP、最大HPも増える。 上下キーでレベルアップしたときに特に成長させたいステータスを選べる。ソフト1でセーブ、ソフト2でアイテム画面 アイテム ポーション…HP回復/万能薬…ST回復/破砕グラブ…戦闘中攻撃アップ/鉄壁…戦闘中防御アップ+一回だけ魔法特殊効果を防ぐ/水晶玉…戦闘中魔力+精神アップ/マモノ餌…エンカウント率アップ/透明マント…エンカウント率ダウン、戦闘中なら逃げ出す 見透しの巻物…マップにトラップを表示。戦闘中なら敵のHPとステータスを表示/TNT爆弾…目の前のトラップ・アイテムを粉砕。戦闘中なら敵を一撃/幸せの風…全ステータスを1アップ+HP全回復+ST回復 ソフト1で使用、ソフト2でマップへ戻る バトル 敵とエンカウントで発動。手前が自分、数値は現HP/最大HP:ステータスと見る。ステータスは異常が出ているステータス数値のor値(闇1毒2混4沈8)敵は5種類それぞれ個性がある [コマンド] 戦う…物理攻撃/防御…ダメージ1/2、ステータス異常回避、HPちょい回復/魔法…魔力攻撃。うまくいくと特殊効果発動。(紫ドーム→闇/緑玉→毒/キラキラ星→混乱/五傍星→沈黙)/アイテム…アイテムを一つだけ使用 SHOP 10階に一回降りるときに買い物ができます まあこんなもんです。ほんとはもっといろいろ付ける予定でしたが俺の携帯では限界のようなのでこれで完成 SPALMってなんでもできるね
833 :138 :2006/01/25(水) 21:56:17 ID:X1ruoIw5O 電卓を作っています。ミニ版完成しますた。1の段〜9の段までの九九です。0の段もあります。 【九九ランダム】 A=abs(rand)%9 B=abs(rand)%9 C=A*B text(A+"×"+B+"="+C,0,12)input()
834 :非通知さん@アプリ起動中 :2006/01/25(水) 22:05:57 ID:nVVn2++FO まあそこそこできるようになってきたな ランダムではなく、掛けられる数を上下、掛ける数を左右で変えられるように改造してみたら?
835 :138 :2006/01/25(水) 22:22:04 ID:X1ruoIw5O >834 たとえば 1×1=1 とかの場合左右で 2×2=4 とかにする奴ですか? 今度は○で変わるようにしました。 【九九ランダム】 A=abs(rand)%10 B=abs(rand)%10 C=A*B label 0 text(A+"×"+B+"="+C,0,12)if input(0)=keyselect then A=abs(rand)%10 B=abs(rand)%10 C=A*B clear(0,0,280,280) endif if input(0)=key0 then end endif goto 0
836 :非通知さん@アプリ起動中 :2006/01/25(水) 23:21:27 ID:nVVn2++FO ゆういちのソースを発展させてそれなりのゲーム完成したぞ。 今流行の右脳系ゲームだ。
837 :非通知さん@アプリ起動中 :2006/01/25(水) 23:23:58 ID:nVVn2++FO s=20m=s soft1("○")soft2("×") label 0s=s-1if s<0then goto 3endif a=abs(rand)%10b=abs(rand)%10q=a*b+(rand)%2lock()clear(0,0,240,240)text(a+" x "+b+" = "+q+" ?",10,20)unlock(1) label 5if input()and keysoft1 then goto 1elseif scan=keysoft2 then goto 2endif goto 5 label 1if q=a*b then p=p+1 text("正解!",40,50)else text("不正解",40,50)endif input()goto 0 label 2if q=a*b then text("不正解",40,50)else p=p+1 text("正解!",40,50)endif input()goto 0 label 3text("正解率 : "+p+" / "+m,10,100)input()
838 :138 :2006/01/25(水) 23:48:21 ID:X1ruoIw5O 俺のヘッポコソースで作れる…だ…
839 :138 :2006/01/26(木) 14:48:55 ID:jjLlTk41O あれ?うp板に名無しで投稿してるの誰?
840 :138 :2006/01/26(木) 20:28:55 ID:jjLlTk41O ダイナマイト?を作ってみました。 【ゲーム系?ダイナマイト】 大=20 幅=20 label 0 lock()farc(10,12,大,幅)if 幅>150then clear(0,0,280,280)text("クリアー!",180,100) endif if input(0)=keyselect then 大=大+10幅=幅+10 endif if input(0)=key0 then end endif unlock(1) goto 0
841 :138 :2006/01/27(金) 18:11:55 ID:Me6dLRp+O 今までの俺の作品は連打系が多かったけど今回はおし続け系 i=50h=50 label 0 text("人",i,h)if scan=keyright then i=i+7clear(0,0,280,280) endif if scan=keydown then h=h+7clear(0,0,280,280) endif if scan=keyleft then i=i-7clear(0,0,280,280) endif if scan=keyup then h=h-7clear(0,0,280,280) endif if input(0)=key0 then end endif goto 0
842 :138 :2006/01/27(金) 18:15:05 ID:Me6dLRp+O 【ダイナマイト○おし続け】 大=20 幅=20 label 0 lock()farc(10,12,大,幅)if 幅150then clear(0,0,280,280)text("クリアー!",180,100) endif if scan=keyselect then 大=大+10幅=幅+10 endif if input(0)=key0 then end endif unlock(1) goto 0
843 :138 :2006/01/28(土) 19:24:18 ID:iGXtzoA6O 返事が無い…ただのしかばねスレのようだ…
844 :138 :2006/01/30(月) 03:12:20 ID:QoL71gpsO オリジゲーム?ファイルは四つ 「タイトル」 label 0 clear(0,0,280,280)text("喧嘩道場!",50,100)text("key1.スタート",50,120)if scan=key1 then thread("コマンド","スタート")join("スタート") endif goto 0
845 :138 :2006/01/30(月) 03:14:56 ID:QoL71gpsO 「バトル」 clear(0,0,280,280) label 2 text("(`´∀`)",50,50)text("| ○○",60,70)text("| |",70,90)text("(-∀^)",150,50)text("○○ |",140,70)text("| |",130,90)text("keydown.
846 :138 :2006/01/30(月) 03:16:38 ID:QoL71gpsO 「バトル」2ページ目 ..攻撃1",0,12)text("keyup...攻撃2",0,24)if scan=keydown then thread("攻撃!","攻撃1")join("攻撃1") endif if scan=keyup then thread("攻撃!","攻撃2")join("攻撃2") endif goto 2
847 :138 :2006/01/30(月) 03:18:25 ID:QoL71gpsO 「攻撃!」 label 1 clear(0,0,280,280)text("(^∀^) つ",60,50)text("|レ|",70,70)text("U U",80,90)text("))゚。゚)",160,50)text("○○|",150,70)text(">>",140,90)if scan=keyselect then thread("コマンド","戻る")join("戻る") endif goto 1
848 :138 :2006/01/30(月) 03:19:23 ID:QoL71gpsO 「攻撃!」 label 3 clear(0,0,280,280)text("(>∀<)",60,50)text("|レ|========",70,70)text("U U",80,90)text("(> <)",150,50)text("→) |",140,70)text(">>",150,90)if scan=keyselect then thread("バトル","バック")join("バック") endif goto 3
849 :138 :2006/01/30(月) 05:01:44 ID:QoL71gpsO 「タイトル」のthread("コマンド","スタート")と「攻撃!」のthread("コマンド","戻る")の"コマンド"は"バトル"に変えて下さい。
850 :非通知さん@アプリ起動中 :2006/01/30(月) 23:04:28 ID:R0le7dUtP 迷路自動生成。 作りかけの上、最適化を全く施していないので効率が悪く、非常に遅い。 しかし続きを作るのはもう秋田。誰かヨロシク。 mazeCols = 80; mazeRows = 60; waysWidth = 3; waysHeight = 3; for(i = 0; i < mazeCols * mazeRows; i++) { map[i] = 0; } map[0] = 1; drawMaze(); while (input(100) != 65536) { digMaze(); drawMaze(); }
851 :続き :2006/01/30(月) 23:05:33 ID:R0le7dUtP 続き。同じソースに続けて。あともうひとつ関数がある。 func digMaze() { for (i = 0; i < mazeCols * mazeRows; i++) { if (! map[i] & 1) { if ((i > mazeCols) && (map[i - mazeCols] & 1) && (rand % 10 < 5)) { map[i] = map[i] | 5; } if ((i % mazeCols) && (map[i - 1] & 1)) { if (rand % 10 < 5) { map[i] = map[i] | 3; } } ? map[i]++;? } } }
852 :続き :2006/01/30(月) 23:06:25 ID:R0le7dUtP ラスト。これらは全部同じファイルであるのが望ましいが、 文字数オーバーの機種は適宜編集して欲しい。 func drawMaze() { lock(); col(0x000000); frect(0, 0, waysWidth * mazeCols, waysHeight * mazeRows); for(i = 0; i < mazeCols * mazeRows; i++) { col(0xFFFFFF); if (! (map[i] & 1)) { frect((i % mazeCols) * waysWidth, (i / mazeCols) * waysHeight, (i % mazeCols + 1) * waysWidth, (i / mazeCols + 1) * waysHeight); } if (! (map[i] & 2)) { line((i % mazeCols) * waysWidth, (i / mazeCols) * waysHeight, (i % mazeCols) * waysWidth, (i / mazeCols + 1) * waysHeight); } if (! (map[i] & 4)) { line((i % mazeCols) * waysWidth, (i / mazeCols) * waysHeight, (i % mazeCols + 1) * waysWidth, (i / mazeCols) * waysHeight); } } unlock(1); }
853 :非通知さん@アプリ起動中 :2006/01/30(月) 23:07:29 ID:R0le7dUtP >>851 の > ? map[i]++;? の行は不要だった。削除しておいて。
854 :138 :2006/01/30(月) 23:23:39 ID:QoL71gpsO
855 :非通知さん@アプリ起動中 :2006/01/31(火) 02:04:15 ID:azhAy2oJO >>853 何も映らない
856 :138 :2006/01/31(火) 14:45:11 ID:MD2XyVGTO text(">>"はtext("<<"に直しといて
857 :850 :2006/01/31(火) 18:42:07 ID:Z+WHpgkoP >>855 無茶苦茶処理が遅いだけ。N901iCでも1分ぐらいはかかる。 で、せっかくだから処理がわかりやすいように改変しただけのバージョンも投下。 mazeCols = 20; mazeRows = 15; waysWidth = 10; waysHeight = 10; text("決定:終了/他:掘削+更新", 0, mazeRows * waysHeight, 0); map[0] = 1; while (input() != 65536) { digMaze(); }
858 :850 :2006/01/31(火) 18:42:48 ID:Z+WHpgkoP func digMaze() { lock(); col(0x000000); frect(0, 0, waysWidth * mazeCols, waysHeight * mazeRows); col(0xFFFFFF); for (i = 0; i < mazeCols * mazeRows; i++) { if (! map[i] & 1) { if ((i >= mazeCols) && (map[i - mazeCols] & 1) && (rand % 10 < 4)) { map[i] = map[i] | 5; } else { if ((i % mazeCols) && (map[i - 1] & 1)) { map[i] = map[i] | 3; } } } if (! (map[i] & 1)) { frect((i % mazeCols) * waysWidth, (i / mazeCols) * waysHeight, waysWidth, waysHeight); } if (! (map[i] & 2)) { line((i % mazeCols) * waysWidth, (i / mazeCols) * waysHeight, (i % mazeCols) * waysWidth, (i / mazeCols + 1) * waysHeight); } if (! (map[i] & 4)) { line((i % mazeCols) * waysWidth, (i / mazeCols) * waysHeight, (i % mazeCols + 1) * waysWidth, (i / mazeCols) * waysHeight); } if (i % mazeCols == 0) { unlock(1); lock(); } } unlock(1); }
859 :非通知さん@アプリ起動中 :2006/01/31(火) 19:52:07 ID:3tSzC9uoO 盛り上がってるとこすまんが誰か、 RGBを16進数に変換してくれるプログラムを作って頂けないだろうか…
860 :非通知さん@アプリ起動中 :2006/01/31(火) 21:52:09 ID:hiDY5OEUO わざわざそんなのいらない。16進ぐらい脳内変換
861 :850 :2006/01/31(火) 23:42:13 ID:Z+WHpgkoP 秋田とか言っときながら改良型を投下。(1/3) label init; clearvar(); mazeCols = 20; mazeRows = 15; waysWidth = 10; waysHeight = 10; text("決定:終了/他:掘削+更新", 0, mazeRows * waysHeight, 0); map[0] = 1; lock(); col(0xFFFFFF); frect(0, mazeRows * waysHeight, 240, 12); col(0x000000); text("Thinking...", 0, mazeRows * waysHeight, 0); unlock(1); while (digMaze() && (! input(100))) {} lock(); col(0xFFFFFF); frect(0, mazeRows * waysHeight, 240, 12); col(0x000000); text("決定:終了/他:もう一度", 0, mazeRows * waysHeight, 0); unlock(1); if (input() != 65536) { goto "init"; }
862 :850 :2006/01/31(火) 23:42:47 ID:Z+WHpgkoP (2/3) func digMaze() { filled = 0; lock(); col(0x000000); frect(0, 0, waysWidth * mazeCols, waysHeight * mazeRows); col(0xFFFFFF); for (i = 0; i < mazeCols * mazeRows; i++) { if (! map[i]) { if ((rand % 10 < 4) && ((i >= mazeCols) && (map[i - mazeCols] & 1))) { map[i] = 5; } if ((rand % 10 < 4) && ((i % mazeCols) && (map[i - 1] & 1))) { map[i] = 3; } if ((rand % 10 < 4) && ((i + mazeCols < mazeCols * mazeRows) && (map[i + mazeCols] & 1))) { map[i] = 1; map[i + mazeCols] = map[i + mazeCols] | 5; } if ((rand % 10 < 4) && (((i + 1) % mazeCols) && (map[i + 1] & 1))) { map[i] = 1; map[i + 1] = map[i + 1] | 3; } } else { filled++; } drawBox(); } unlock(1); return(mazeCols * mazeRows - filled); }
863 :850 :2006/01/31(火) 23:43:42 ID:Z+WHpgkoP (3/3) func drawBox() { drawX = (i % mazeCols) * waysWidth; drawY = (i / mazeCols) * waysHeight; if (! (map[i] & 1)) { frect(drawX, drawY, waysWidth, waysHeight); } if (! (map[i] & 2)) { line(drawX, drawY, drawX, drawY + waysHeight); } if (! (map[i] & 4)) { line(drawX, drawY, drawX + waysWidth, drawY); } if (i % mazeCols == 0) { unlock(1); lock(); } }
864 :850 :2006/01/31(火) 23:47:17 ID:Z+WHpgkoP マップが埋まるまで自動で繰り返し、埋まったら停止。 一回分描画ごとにキー判定。キーバッファに何かあれば終了。 マップが埋まって停止したときに決定キーで終了。それ以外のキーならもう一度ゼロからやり直す。 マップのサイズは、 mazeCols = 迷路の横幅マス数 mazeRows = 迷路の縦幅マス数 waysWidth = 通路+壁の横幅ドット数 waysHeight = 通路+壁の縦幅ドット数 となっている。 例によって最適化はしていない。また、バグが残っているのかたまに部屋ができてしまう。
865 :SPALMカラーチェッカー 1/2 :2006/02/01(水) 00:07:24 ID:3tSzC9uoO >>860 お前みたいに頭よくない俺には必要なんだよ まあ自作したが。 p=8@(v,"A","B","C","D","E","F")soft2("QUIT") label 0gc()lock()color(d[0],d[1],d[2])frect(0,0,240,270) for(c=0;c<3;c++){c[c]=d[c]/16if(c[c]>9){c[c]=v[c[c]-10]}e[c]=d[c]%16if(e[c]>9){e[c]=v[e[c]-10]}} if(d[0]+d[1]+d[2]<380){col(0xFFFFFF)}else{col(0x000000)}text("col(0x".c[0].e[0].c[1].e[1].c[2].e[2].")",0,0,0) text("color(".d[0].",".d[1].",".d[2].")",0,18,0)text("増減値".p." ([7]↑ / [*]↓)",0,48,0)unlock(1)
866 :2/2 :2006/02/01(水) 00:09:47 ID:65VJvb8eO if(scan==2&d[0]+p<256){d[0]=d[0]+p}elsif(scan==4&d[1]+p<256){d[1]=d[1]+p}elsif(scan==8&d[2]+p<256){d[2]=d[2]+p} elsif(scan==16&d[0]-p>0){d[0]=d[0]-p}elsif(scan==32&d[1]-p>0){d[1]=d[1]-p}elsif(scan==64&d[2]-p>0){d[2]=d[2]-p} elsif(scan==1024&p>0){p--}elsif(scan==128){p++}elsif(scan==262144){end}goto 0
867 :非通知さん@アプリ起動中 :2006/02/01(水) 07:01:50 ID:/W+zBhw8O X=24516do{A[I++]=X&15}while(0<X=X>>4 )for(J=I-1;J>=0;--J){text(strat("0123456789ABCDEF",A[J]),60-J*6,0,0)}input()
868 :非通知さん@アプリ起動中 :2006/02/01(水) 07:40:37 ID:/W+zBhw8O 今の無しね X=-46521 do{text(strat("0123456789ABCDEF",X&15),60-J++*6,0,0)}while(J<9&&X=X>>4 )input()
869 :138 :2006/02/01(水) 23:44:02 ID:crhBr6R/O Xを何々で止める方法も分かったしソース貼るかぁ X=0 label 0 text("人",X,12)if X>=228then X=228 endif if scan=keyright then X=X+12clear(0,0,280,280) endif if input(0)=key0 then end endif goto 0
870 :非通知さん@アプリ起動中 :2006/02/01(水) 23:59:10 ID:5F07RNdu0 138とか名乗っているゆういちのチラシの裏でスレが埋まっている件について
871 :138 :2006/02/03(金) 18:43:15 ID:V2TnUd9zO 猛ダッシュでホームページ作りましたURL→http://hp22.0zero.jp/444/ccBASIC/
872 :非通知さん@アプリ起動中 :2006/02/06(月) 22:42:03 ID:tLWBjCzAO 柄沢の力は少年マンガに出てきたどの時間操作系の能力より現実的だな。実際はマインドコントロールだけど…。こわい
873 :非通知さん@アプリ起動中 :2006/02/06(月) 23:49:52 ID:tLWBjCzAO 誤爆った…orz
874 :138 :2006/02/07(火) 00:38:44 ID:SzaulJ5/O forとかMAP[DATA[i][j]]とかやって遊んでたらこんなんできた… MAP[0]="□" MAP[1]="■" for i=0 to 10 for j=0 to 10 text(MAP[DATA[i][j]],i*5+30,j*5+30)text(MAP[DATA[i][j]],i*5+31,j*5+31) next next input()
875 :138 :2006/02/11(土) 02:40:21 ID:yD+sJ8qpO 3月1日にはDoCoMoに代える予定です。
876 :非通知さん@アプリ起動中 :2006/02/12(日) 16:02:23 ID:s0wLUOy1O 心が落ち着くプログラム soft1("EXIT")origin(width/2,height/2)label 0lock()clear(-width/2,-height/2,width,height)if P=0then H=(H+175)%360onlight()endif P=sin(H-T)/3T=(360+T+P)%360X=cos(T)*3/5Y=sin(T)*3/5line(X,Y,cos(T-76)*3/20,sin(T-76)*3/20)arc(-15,-15,29,29)line(X,Y,cos(T+76)*3/20,sin(T+76)*3/20)if(scan=131072)then end endif line(0,0,cos(H),sin(H))unlock(1)goto 0
877 :138 :2006/02/14(火) 13:24:50 ID:Z7cbhgX/O i/ez/携帯BASIC ver.2 http://hobby7.2ch.net/test/read.cgi/appli/1134721274/
878 :138 :2006/02/14(火) 18:40:20 ID:Z7cbhgX/O 掛け算機 A=1 B=1 C=A*B label 0 text(A+" x "+B+" = "+C,0,12)if A>=9then A=9 endif if A<=1then A=1 endif if scan=keyright then A=A+1 C=A*B clear(0,0,280,280) endif if scan=keyleft then A=A-1 C=A*B clear(0,0,280,280) endif if B>=9th
879 :138 :2006/02/14(火) 18:41:25 ID:Z7cbhgX/O en B=9 endif if B<=1then B=1 endif if scan=keyup then B=B+1 C=A*B clear(0,0,280,280) endif if scan=keydown then B=B-1 C=A*B clear(0,0,280,280) endif if scan=key0 then end endif goto 0
880 :138 :2006/02/21(火) 20:24:22 ID:tRmb+MKmO 現在シレン風開発中.タイトルにメニューにダンジョンの画面開発完了.後はアイテムやモンスター,主人公を表示,LvUP,セーブ,町,マップ表示,ATUP,アイテム買い等の処理で完成!ある意味ソースは超長い
881 :138 :2006/02/21(火) 22:46:20 ID:tRmb+MKmO 中間発表.処理を省くために町とセーブ機能を消します後ダンジョンは固定ですんでアイテムの位置や店の位置は変わりませんモンスターは完全にランダム移動ですパコ系は壁をすり抜けるしたまに居なくなりますアイテムの中にはスーファミ版で有った肉とかも有ります
882 :138 :2006/02/22(水) 05:10:43 ID:GUHSUYCGO 中間発表2アイテム買いとATUPの機能は消します後パコ系は携帯版みたいに壁を通らなくしました罠は全て"大""洪"等の文字で表示されますちなみに大は大地雷で洪は大洪水で穴は落とし穴です全て略しています
883 :138 :2006/02/22(水) 07:31:04 ID:GUHSUYCGO アイテムは10個までしか持てないし整理も出来ない誰かデバッグしたい人居る?後X>=12等とすると■が無い所要するに● ■■■■■ ■ ■ ■ ● ■■■■■ の所で止まってしまいます…
884 :138 :2006/02/22(水) 08:10:37 ID:GUHSUYCGO シレン風に引き続きカービィ風にマインスイーパ風マリオ風の3つを新たに製作開始しました
885 :138 :2006/02/22(水) 17:45:55 ID:GUHSUYCGO 完成したら面倒くてもうpしる本当に作ってるか分かって貰えないから
886 :138 :2006/02/23(木) 17:46:42 ID:pxeekZrLO ダンジョン構造はtext("■■■■"みたいなマップ構造はやめて完全rectにする事にして階段の位置も完全randにした一応モンスターは階ごとに10体でますモンスターは増えません(てか増やし方知らねーし
887 :138 :2006/02/28(火) 19:49:08 ID:08/aD9MGO ついにiモードに変えました!
888 :非通知さん@アプリ起動中 :2006/02/28(火) 20:10:27 ID:ZG1KyTncO おめ。少しずつSPALMも慣れていくといいよ。
889 :138 :2006/02/28(火) 21:04:52 ID:08/aD9MGO ありがとう! SPALMは今やってます。馴れるまで時間がかかりますが頑張ります!
890 :138 :2006/03/01(水) 19:30:57 ID:FGVEsdnfO SPALMやり方が分かんね…だりかおしえてくれぃ… label 0 @("00000000001000111100010100000000000001001111100111","00000000000111110011000000101100000000111111111111")if(scan==0){end} goto 0 ……意味分かんない……
891 :非通知さん@アプリ起動中 :2006/03/03(金) 01:10:26 ID:iPfJEY3hO .
892 :非通知さん@アプリ起動中 :2006/03/04(土) 03:24:24 ID:tNHgdbi0O .
893 :非通知さん@アプリ起動中 :2006/03/05(日) 00:51:49 ID:77DIyn3IO いろは
894 :非通知さん@アプリ起動中 :2006/03/05(日) 22:25:05 ID:77DIyn3IO あ
895 :138 :2006/03/12(日) 00:06:17 ID:/JMogHz9O 太達風作ってます label 太 @(A,"ドン","カッ") goto"太" &トルネコ風も(トルネコ風はストーリーとか考え中画像は使わない label ダ 'ダンジョン処理' goto"ダ" label 仲 #仲間# goto"仲" label ア #アイテム# goto"ア" label 動 #キー# goto"動" label 自 #キャラ# goto"自" こんな感じ。 プログラムやりたい人いる?
896 :138 :2006/03/12(日) 02:16:14 ID:/JMogHz9O 左を押しても動かない… Y=0X=0 label ダ 'ダンジョン絵画' lock()clear(0,0,280,280)text("人",X,Y,0)rect(0,0,144,144) i=input(0) if(i==32768&&Y<132){Y=Y+12}if(i==4096&&Y>0){Y=Y-12}if(i==16384&&X<132){X=X+12}if(scan==8192&&X<0){sleep(150)X=X-12}if(scan==2){end} unlock(1)goto"ダ" これが問題のソース… キー┃数┃ 0 ┃1 ┃ 1 ┃2 ┃ 2 ┃4 ┃ 3 ┃8 ┃ 4 ┃16┃ 5 ┃32┃ 6 ┃64┃ ↓↓↓↓ 続く
897 :138 :2006/03/12(日) 02:20:08 ID:/JMogHz9O 7 ┃128 ┃ 8 ┃256 ┃ 9 ┃512 ┃ * ┃1024┃ # ┃2048┃ 上┃4096┃ 左┃8192┃ ↓↓↓↓↓ 続く
898 :138 :2006/03/12(日) 02:24:20 ID:/JMogHz9O 右 ┃16384 ┃ 下 ┃32768 ┃ センター ┃65536 ┃ 左ソフト┃131072┃ 右ソフト┃262144┃ ━━-┻-━━-┛ つけ忘れ↑
899 :非通知さん@アプリ起動中 :2006/03/13(月) 09:33:19 ID:r8TuLtsJO 138は市ね
900 :非通知さん@アプリ起動中 :2006/03/13(月) 09:35:20 ID:r8TuLtsJO パクリ厨138は塵
901 :非通知さん@アプリ起動中 :2006/03/13(月) 09:38:04 ID:r8TuLtsJO 138消えろ
902 :非通知さん@アプリ起動中 :2006/03/13(月) 13:53:42 ID:2DeXKegp0 138はネ申!!!! 僕は尊敬してますよ!!!!
903 :非通知さん@アプリ起動中 :2006/03/13(月) 15:26:36 ID:r8TuLtsJO 138は塵
904 :138 :2006/03/13(月) 15:31:27 ID:B2H6FMVpO >>902 マジ?
905 :非通知さん@アプリ起動中 :2006/03/13(月) 21:07:16 ID:f3r6Tn3M0 ID:r8TuLtsJO必死だな
906 :非通知さん@アプリ起動中 :2006/03/13(月) 21:09:27 ID:r8TuLtsJO 138は塵
907 :138 :2006/03/15(水) 00:20:38 ID:kSOF2mXzO HP[0]=10000 HP[1]=10000 'HP表示 text("HP:".HP[0]." HP:".HP[1],0,0,0)input() 未完成ロボアクション
908 :138 :2006/03/15(水) 00:39:11 ID:kSOF2mXzO SPALMのスレ立てて〜… 立てれない… DOWNLOAD http://keez.net/soft/spalm/index.html
909 :非通知さん@アプリ起動中 :2006/03/15(水) 20:24:02 ID:wi6AZD37O そろそろ新機能が欲しい 画像を登録して背景にしたり 32x32くらいの画像をもっと簡単に取り入れられたり 通信でソースやりとりできたり(これが一番重要)… 誰か神が改変してくれないものか…どうかお願いします
910 :138 :2006/03/16(木) 05:54:12 ID:dgj7WOE9O 俺まだSPALMの初心者だからこんなのしか出来ない… HP=15 label 0 lock()clear(0,0,240,240)text("HP:".HP,0,0,0)if(scan==4){HP=HP+1}if(scan==1){end} unlock(1) goto 0
911 :非通知さん@アプリ起動中 :2006/03/16(木) 06:30:29 ID:5LfcV51DO SPALMならではの機能で、Javaに近い言語を使えるんだなこれが HP=HP+1 ↓ HP++ HP--なら1ずつ減らせる どちらにしろ、1ずつしか計算できんが… あと、ビットシフトってのがあって…HP200だとすると HP=HP>>1 こうするとHPは半分になる。 HP=HP<<1 こちらは2倍になるはず。 >>1 なら半分(<<1なら2倍) >>2 なら1/4(<<1なら4倍) >>3 なら1/8(<<1なら8倍)…って感じの計算しか出来んが…
912 :138 :2006/03/19(日) 03:17:53 ID:0Ul9a4m+O @変数でかなり使いやすい…俺も初心者だけど他の初心者用〜↓ @(A,"勝ち","負け","そこには置けない","負けてください","勝ってください") B=abs(rand)%5 C=abs(rand)%5 text(A[B]." ".A[C],0,0,0)input()
913 :非通知さん@アプリ起動中 :2006/03/25(土) 14:56:43 ID:/HeSUwZJO このスレも終わりかな… 楽しかった日々よ…永遠に。
914 :非通知さん@アプリ起動中 :2006/03/27(月) 20:55:11 ID:FlrWngjFO スロットのゲームを携帯BASICで造ろうとしているんですが 子役やボーナス絵柄はケータイの絵文字を使って表現しようと思ってるんですけど リールの回転をどうやれば表現できるかがわかりません ここにいるプログラミング名人の方々の力を貸して貰えませんか?
915 :非通知さん@アプリ起動中 :2006/03/28(火) 00:20:45 ID:otRL/JEYO 簡単すぎて屁こいちまったじゃねぇか @(A,"☆","♪","7","BAR","*") label 0lock()clear(0,0,60,40)for(i=0,k=k+2;i<3;++i){clip(i*20,0,20,40)rect(i*20,0,19,39)for(j=0;j<3;++j){text(A[(i+j+5-k/18)%5],i*20+10,j*18+k%18-15,1)}}clip(0,0,60,40)if(input(0)){end}unlock(1)goto 0
916 :非通知さん@アプリ起動中 :2006/03/28(火) 00:21:21 ID:54Z/3esL0 人間の目はテキトーなので、それっぽく見せてやればそれっぽく見える。 つまり、正位置、1/3ずらし、2/3ずらし、の3シーンぶん表示を用意して、 ものっそい勢いで描き換えてやればおk。
917 :非通知さん@アプリ起動中 :2006/03/28(火) 00:23:04 ID:54Z/3esL0 あれ……俺、自演に釣られたのか……?_no
918 :非通知さん@アプリ起動中 :2006/03/28(火) 11:00:38 ID:otRL/JEYO SPALM用だが改良版。ドラムを止められるようになった 得点は手前で計算しろ origin(width/2-30,height/2-20)@(A,"☆","♪","7","BAR","*")soft1("EXIT")soft2("NEXT")L=3label 0lock()clear(0,0,60,40)for(i=0;i<3;++i){clip(i*20,0,20,40)rect(i*20,0,19,39)for(j=0,i>=L&&k[i]=k[i]+20;j<3;++j){ text(A[(i+j+5-k[i]/18%5)%5],i*20+10,j*18+k[i]%18-18,1)}}clip(0,0,60,40)if(1<<17&P=input(0)){end}elsif(P&8<<13&&L<3){k[L]=k[L]-k[L++]%18+14}elsif(P&1<<18&&L>2){for(L=i=0;i<3;k[i++]=abs(rand)%90){}}unlock(1)goto 0
919 :非通知さん@アプリ起動中 :2006/03/28(火) 11:27:42 ID:FKihfTyP0 また質問なんだけど、例えば旧MAP[5][5]に"M"をいれたいときはどうかけばよいの?
920 :非通知さん@アプリ起動中 :2006/03/28(火) 11:40:45 ID:otRL/JEYO なんだユウイチか…
921 :非通知さん@アプリ起動中 :2006/03/28(火) 11:44:08 ID:FKihfTyP0 substr(MAP[5],5,1)="M"
922 :914 :2006/03/28(火) 15:55:01 ID:zwsGqo5vO >>915-918 ありがとうございます! >>915 と>>918 はBASICのプログラムじゃないっぽいですが BASICに置き換えて自力で考えてみます わからなくなった時はまたここへ質問しに来ていいですか?
923 :138 :2006/03/28(火) 17:53:17 ID:x2HNJo7OO >>920 俺はスロットなんか作らないぞ??
924 :138 :2006/03/29(水) 17:19:23 ID:gsDXT0pTO 最近俺はiBASICをダウソした。iBASIC意味分からん…iBASICのスレ(前スレ)を見たけど分かんねぇ…
925 :非通知さん@アプリ起動中 :2006/03/30(木) 04:27:16 ID:3PEDCDgkO 携帯BASICでスロットゲームを造ろうとしていた者です。 絵文字を使うつもりでしたがやっぱり画像を造ってそれを使うことにしました。 >>916 の方の言っていた事を頭に置いて造ってみて第1リールだけ 何とか回転しているように見えるようには出来たのですが… 一周を回る速度が約3秒弱、と遅すぎて困っます。 これって処理速度とかいうものが関係しているのですか? 僕の造ったプログラムに問題があると思うのですけど というよりも実はプログラムの事についての知識が全くないんです。 すみません。どなたか、ヒント下さい m(._.)m
926 :非通知さん@アプリ起動中 :2006/03/30(木) 07:53:42 ID:HHDNp4hWO そんなの機種やプログラムによって違うからエスパーでも無けりゃわからん
927 :非通知さん@アプリ起動中 :2006/03/30(木) 13:41:56 ID:3PEDCDgkO 一応三つのリールまでできたんですけど… a="7" b="〓" c="☆" d="♪" e="$" f="◎" k=0 j=1 l=2 s=1 m=0 n=1 o=2 p=1 q=0 r=1 t=2 u=1 r[0]=b r[1]=a r[2]=e r[3]=c r[4]=f r[5]=d c[0]=b c[1]=d c[2]=a c[3]=e c[4]=c c[5]=f z[0]=d z[1]=e z[2]=a z[3]=f z[4]=b z[5]=c origin(100,89) label A clear(0,0,width,height) i=input(0) text(r[k],0,33)text(r[j],0,22)text(r[l],0,11) k=k+s j=j+s l=l+s text(c[m],13,33)text(c[n],13,22)text(c[o],13,11) m=m+p n=n+p o=o+p text(z[q],26,33)text(z[r],26,22)text(z[t],26,11) q=q+u r=r+u t=t+u if k=6 then k=0 elseif j=6 then j=0 elseif l=6 then l=0 endif if m=6 then m=0 elseif n=6 then n=0 elseif o=6 then o=0 endif if q=6 then q=0 elseif r=6 then r=0 elseif t=6 then t=0 endif if i=keysoft2 then exit elsef i=key4 then s=0 elseif i=key2 then s=1 p=1 u=1 elseif i=key5 then p=0 elseif i=key6 then u=0 endif goto"A" ↑これをもっとスムーズに回るようにしたいんですが どうしたらいいんでしょうか? クズに等しいプログラムを貼ってしまってすみません 本当ならもっと短いプログラムでできる事なんだろうナ
928 :非通知さん@アプリ起動中 :2006/03/30(木) 17:00:52 ID:HHDNp4hWO まあ作り方は人によるから正しく動作している以上そのプログラムにはとやかく言わんが、 高速にする手っとり早い方法はlabel Aの後にlock()、goto"A"の前にunlock(1)を入れればVやezなら速くなると思うよ
929 :138 :2006/03/32(土) 02:42:48 ID:PxczX2PbO 誰かこんなスレ立てたみたい!!↓ http://c-docomo.2ch.net/test/-/appli/1143826751/i
930 :非通知さん@アプリ起動中 :2006/03/32(土) 03:12:17 ID:c7/4mvVq0 >>138 まずcのURLで貼るな。 それからオマエはそこへは行くな。 わかったな?
931 :非通知さん@アプリ起動中 :2006/04/20(木) 18:28:23 ID:5LlD8eF0O 画像の描写する点を上じゃなくて下にすることってできませんか? 描写点から上に向かって画像を表示させたいんです 携帯BASICマスターの方、教えて下さい
932 :非通知さん@アプリ起動中 :2006/04/21(金) 18:12:59 ID:ItOKFOL3O 携Bなら画像の高さ取得してY座標から引けばいい SPALMならアンカーで一発だよ
933 :非通知さん@アプリ起動中 :2006/04/22(土) 21:27:36 ID:vOwpsbHiO すみません もう一つ聞きたいんですが 画像の一番上の部分と一番下の部分をつなげることってできますか?
934 :非通知さん@アプリ起動中 :2006/04/22(土) 22:26:10 ID:FHh2MMtBO 2回描画すればいいんじゃね?
935 :非通知さん@アプリ起動中 :2006/05/05(金) 13:28:06 ID:Qv66QugMO 埋め
936 :非通知さん@アプリ起動中 :2006/05/06(土) 21:48:11 ID:qWH89RmdO 高さ420で幅40の画像を三つ作ろうとしたら容量の限界なのか 三つ目の画像の途中で文字が打てなくなりました これはどうすることもできないんですよね?
937 :非通知さん@アプリ起動中 :2006/05/25(木) 17:34:18 ID:9UIwRhPT0 Vにも携帯BASIC出たんです・・・統合してもらってもいいですかね?
938 :非通知さん@アプリ起動中 :2006/06/08(木) 22:31:36 ID:dVoORbODO 機能追加がないとなぁ 対応機種増えてもな…
939 :非通知さん@アプリ起動中 :2006/06/09(金) 07:48:49 ID:jbqApUxRO threadとかね でも俺はそれよりも高速化して欲しいな
940 :非通知さん@アプリ起動中 :2006/07/04(火) 21:59:51 ID:LGy0UGuL0 保守
941 :非通知さん@アプリ起動中 :2006/07/12(水) 00:42:30 ID:vq7a0AwgO N88-BASICとMSX-BASICで育った俺には イマイチこの文法に馴染めないなぁ あ、単に俺がオサーンになっただけか('A`)
942 :非通知さん@アプリ起動中 :2006/07/20(木) 00:11:41 ID:Nh77gjpF0 出来ることならpc用のデバッガが欲しい…
943 :非通知さん@アプリ起動中 :2006/07/24(月) 17:15:02 ID:mn706vwBO ひさびさに投下 二つの円が衝突したときの跳ね返りをシミュレート r=4+R=36A=-B=1W=44H=70VX=6VY=8X=rand%W Y=rand%H origin(66,72)label 0lock()if(scan){end}clear(-66,-72,132,144)abs(51-W)>14&&A=-A;abs(54-H)>17&&B=-B;rect(-W=W+A,-H=H+B,W+W-1,H+H-1) (X=X+VX,Y=Y+VY,X*X+Y*Y<r*r)&&(X=cos(T=atan(X,Y))*r/100,Y=sin(T)*r/100,V=VX,abs(cos(T))>70?(VX=(V*Y-VY*X)*Y*2/(r*r)-V,VY=Y*(VX-V)/X+VY):(VY=((V=VY)*X-VX*Y)*X*2/(r*r)-V,VX=X*(VY-V)/Y+VX);); if(abs(X)>W-4){X=X<0?4-W:W-4;VX=X<0?-A-VX:A-VX;}if(H-4<abs(Y)){Y=Y<0?4-H:H-4;VY=Y<0?-B-VY:B-VY;}arc(-R,-R,R+R-1,R+R-1)arc(X-4,Y-4,7,7)text(VX*VX+VY*VY."ppf",0,-6,1)unlock(1)goto 0 func atan(x,y){if(x){for(t=abs(100*y/x),i=-1;t>tan(i=i+10);){}for(;t<tan(i);--i){}(y<0^x<0&&i=-i,x<0&&i=180+i)}else{i=y<0?270:90;}return i}
944 :非通知さん@アプリ起動中 :2006/07/27(木) 21:50:45 ID:kqmDJOPcO 解説ページある?
945 :非通知さん@アプリ起動中 :2006/07/30(日) 18:40:30 ID:YbTdDQ9hO なんのことやら('A`)
946 :非通知さん@アプリ起動中 :2006/07/30(日) 21:28:46 ID:wqnNMohRO 見ての通りだよ
947 :非通知さん@アプリ起動中 :2006/08/03(木) 11:19:40 ID:x9ulkYQpO 見ての通りの糞スレ出巣
948 :非通知さん@アプリ起動中 :2006/08/07(月) 03:48:16 ID:BudVqoJ6O 次スレ http://hobby7.2ch.net/test/read.cgi/appli/1154887161/
949 :非通知さん@アプリ起動中 :2006/08/10(木) 06:51:28 ID:x2vFv9PMO おすすめある?
950 :非通知さん@アプリ起動中 :2006/08/10(木) 09:45:27 ID:5qfCkkYjO >>949 何の?
951 :非通知さん@アプリ起動中 :2006/08/11(金) 08:11:08 ID:SNdVCPASO アプリ
952 :非通知さん@アプリ起動中 :2006/08/23(水) 04:54:34 ID:aKbZYVxHO く
953 :非通知さん@アプリ起動中 :2006/08/23(水) 08:45:50 ID:aKbZYVxHO そ
954 :非通知さん@アプリ起動中 :2006/08/23(水) 10:10:14 ID:aKbZYVxHO ス
955 :非通知さん@アプリ起動中 :2006/08/23(水) 10:11:01 ID:aKbZYVxHO レ
956 :非通知さん@アプリ起動中 :2006/08/23(水) 18:30:40 ID:LyY/48MXO 956なら神がFLASHに移植
957 :非通知さん@アプリ起動中 :2006/08/23(水) 19:52:19 ID:aKbZYVxHO く
958 :非通知さん@アプリ起動中 :2006/08/24(木) 21:40:57 ID:I0M8fNPwO そ
959 :非通知さん@アプリ起動中 :2006/08/25(金) 07:32:21 ID:/TRR8BXYO ス
960 :非通知さん@アプリ起動中 :2006/08/25(金) 13:59:25 ID:b9rct5qk0 動かない…orz
961 :非通知さん@アプリ起動中 :2006/08/29(火) 04:18:33 ID:pwOOhcsPO く
962 :非通知さん@アプリ起動中 :2006/08/30(水) 02:03:27 ID:27pmUd0JO そ
963 :非通知さん@アプリ起動中 :2006/08/30(水) 06:05:13 ID:27pmUd0JO す
964 :非通知さん@アプリ起動中 :2006/08/30(水) 15:31:19 ID:27pmUd0JO れ
965 :非通知さん@アプリ起動中 :2006/08/31(木) 09:47:21 ID:jFsu4qCuO く
966 :非通知さん@アプリ起動中 :2006/08/31(木) 17:50:23 ID:jFsu4qCuO そ
967 :非通知さん@アプリ起動中 :2006/08/31(木) 17:56:43 ID:WX1FFLGeO み
968 :非通知さん@アプリ起動中 :2006/08/31(木) 21:03:04 ID:HMcirQWS0 そ
969 :非通知さん@アプリ起動中 :2006/09/01(金) 00:43:19 ID:D9Oo7gHlO テクニック!!
970 :非通知さん@アプリ起動中 :2006/09/02(土) 06:54:28 ID:HYZy2T2eO く
971 :非通知さん@アプリ起動中 :2006/09/02(土) 18:44:16 ID:hRFr7vJk0 無料ゲームサイト[モバゲータウン]って、 おもしろいよ!登録してみてね〜 http://mbga.jp/AFmbb.XQPw149787/
972 :非通知さん@アプリ起動中 :2006/09/04(月) 14:00:25 ID:xosB2EaiO く
973 :非通知さん@アプリ起動中 :2006/09/05(火) 11:12:56 ID:nxAQvLpuO そ
974 :非通知さん@アプリ起動中 :2006/09/05(火) 19:11:21 ID:wOvehMf4O み
975 :非通知さん@アプリ起動中 :2006/09/06(水) 07:47:01 ID:NGTy8hwKO く
976 :非通知さん@アプリ起動中 :2006/09/06(水) 23:54:25 ID:S3F+rmPG0 ろ
977 :非通知さん@アプリ起動中 :2006/09/08(金) 04:59:00 ID:zGkjKrVUO く