5ちゃんねる ★スマホ版★ ■掲示板に戻る■ 全部 1- 最新50  

■ このスレッドは過去ログ倉庫に格納されています

【au/OAP】SPALMで自作ゲーム【プログラミング】

1 :非通知さん@アプリ起動中:2008/04/07(月) 22:44:05 ID:jCAvX/z/O
http://ac.appget.com/AC21261/SPALM.html
PCがなくても携帯だけでゲームも作ることができますので暇つぶしに最適かもでっていうwwwwwww
 ̄ ̄ ̄ ̄∨ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄

   /ニYニヽ
   /(゚)(゚)ヽ
  / ⌒¨⌒ \
 |r-)__(-、|
 |l |т| l|
  \ `ー′ /

2 :非通知さん@アプリ起動中:2008/04/07(月) 22:48:46 ID:V4wJq4aGO
>>1
ヨッシーはともかくありがとう
現在WIZライクなゲーム作成中
手伝ってくれるかたいれば作りかけのソース晒します
現在壁を表示するところまでできたけど扉のことをすっかり忘れてて中断中

3 :非通知さん@アプリ起動中:2008/04/07(月) 23:47:56 ID:P6TGcQwgO
厨臭いさげ

4 :非通知さん@アプリ起動中:2008/04/07(月) 23:58:24 ID:SGDaxgM+O
これそもそもPCでプログラミング囓った人じゃないと無理じゃない?
コマンドの説明見てもさっぱりなんだけど

5 :非通知さん@アプリ起動中:2008/04/08(火) 00:46:21 ID:8BC7ND2yO
少しづつでもやっていけばわかると思うよ
オワタの冒険だって作れるかもよ

soft1("オワタ")
X=width/2 Y=height/2
KAO=4
label loop
if(scan==131072){end}
elsif(scan==16){X=X-4 KAO=4}
elsif(scan==64){X=X+4 KAO=-4}
lock()
clear(0,0,240,320)
text("(  )",X,Y,HCENTER|BASELINE)
text("^o^",X-KAO,Y,HCENTER|BASELINE)
unlock(0)
sleep(60)
goto "loop"

6 :非通知さん@アプリ起動中:2008/04/08(火) 06:13:44 ID:O3RFF+y5O
>>4だけどなんとなくわかってきたよ
>>5とOAPスレのウィズライクを参考にさせてもらって頑張って作ってみました
クソゲー注意

soft1("Exit")
x=120 y=120 bx=120 by=50 xy=3 cx=3 cy=3 t=0
label loop
t=t+1 if(t==25){t=0 xy=xy+1}
if(scan==131072){end}
if(scan==4096){y=y-4} if(scan==8192){x=x-4} if(scan==16384){x=x+4} if(scan==32768){y=y+4}
if(x<4){x=4} if(x>226){x=226} if(y<4){y=4} if(y>254){y=254}
if(bx<0){cx=3} if(bx>240-xy){cx=-3} if(by<0){cy=3} if(by>268-xy){cy=-3}
bx=bx+cx by=by+cy
lock()
col(000000) frect(0,0,240,270)
color(255,0,0) frect(bx,by,xy,xy)
color(255,255,255) text("私",x,y,HCENTERlVCENTER)
unlock(0)
sleep(0)
if(x+6<bx){goto "loop"} if(x+6>bx+xy){goto "loop"} if(y+6<by){goto "loop"} if(y+6>by+xy){goto "loop"}
text("死亡",110,110,HCENTERlVCENTER) sleep(3000) end

7 :非通知さん@アプリ起動中:2008/04/08(火) 06:56:17 ID:8BC7ND2yO
初めてで>>6を作れるってのは素直にすごいとオモタ

8 :非通知さん@アプリ起動中:2008/04/08(火) 16:14:25 ID:K4Iiysk90
前に作ったやつその1
text("Loading",120,114,1)
cp="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz!?"
@(rs,img("00011999000000AIII800001HIIIH000019IIRH000019IIIH000019IajX00001IIcjn00001IIajX00001AIjjf0000AAIMsf0009IHAIj8001IAIH990001IHIIII8019I999II8099II99990099AI99A80099H999A98098AI80999010190019980000001990"
,3,20),q,img(
"00011999000000AIII800001HIIIH000019IIRH000019IIIH009019IajX01I81IIcjn0AIH9IIajX0AIHHAIjjf0AAHIAIMsf89HHIHAIj99999IIH9999991H9AIHA9191AI9I9AH00AIHI90AH01AHAIH0180998199000099019980001981999000190099800"
,3,20),q,img(
"0011999000000AIII800001HIIIH000019IIRH180019IIIH980019IajX99001IIcjn99009IIajXI801IAIjjfI80AIAIMsfH01AIHAIj9801HIIH998001IAIIII800AI9A99A800991HIIH0009909999980190AIIIIH0199IIIIIH809AIH999990999800099",3,20),q,img(
"01911999000190AIII800991HIIIH009919IIRH00AH19IIIH00AH19IajX00AH1IIcjn80AI9IIajX80AIAAIjjf90AIAAIMsf901IAHAIjAH00AAIH99IH0099IIIIAH01II9999980AIAIIIH000AIHIAII8001I991AIH0009990199800019001990001900199",3,20),q,img(
"11999000000AIII800001HIIIH000019IIRH000019IIIH000019IajX09801IIcjn19801IIajX00000A9999999809IIIIH9AH0AIIIIH99H1II99999AH1IIIIAI9981IIH9AI8000A9AIH900099IIII80009HIIII98009AAI99990099998999001900019000",3,20),q)
@(p[0],0xC0C0C0,0x80F0,-1,0,0x8000)s=
"1111111111111111111111111111111111111110220111111111111221111110111111011111111111111101111111111101011011111011111110111100011111110111111111111111111100001111111110111111101111011111000111111111".
"11011111110111011111111111110001111001001111141111111101110011011111000000000000000000000000"
func set(S,P){for(i=0;i<288;++i){m[i%24][i/24]=strat(s,i)}for(i=0;i<144;++i){trgt(bg)col(p[P][m[i%12][i/12]])frect(i%12*20,i/12*20,20,20)trgt(bg2)col(p[P][m[12+i%12][i/12]])frect(i%12*20,i/12*20,20,20)}trgt(off)}

9 :非通知さん@アプリ起動中:2008/04/08(火) 16:15:38 ID:K4Iiysk90
その2
loadimg(e,"6,8,8,8,208,224,252,252,252,252,84,124,228,0,0,0,4,0,0,0,11,12,0,1,2,1,1,1,1,3,3,1,0,1,2,1,1,1,1,1,1,3,3,1,1,2,1,1,1,1,1,1,3,3,1,0,4,2,4,2,4,2,4,2,4,0,0,5,2,
4,2,4,2,4,2,4,0,0,4,4,2,4,4,4,2,4,4,0,0,4,4,4,4,4,4,4,4,4,0,0,4,4,4,4,4,4,4,4,4,0,0,4,4,4,4,4,4,4,4,4,0,1,2,1,1,1,1,1,1,3,3,1,1,2,1,1,1,1,1,1,3,3,1,0,1,2,1,1,1,1,3,3,1,0")
@(pl,"7,76,252,252,0,76,240,60,172,252,220,0,0,252,252,252,252,184,116,0,0,0,0,20,20","7,76,252,252,0,156,0,60,220,96,220,0,0,252,252,252,252,184,116,0,0,0,0,20,20")
loadimg(r[4],pl[0].rs[8])loadimg(r[9],pl[0].rs[9])loadimg(r[3],pl[0].rs[6])loadimg(r[8],pl[0].rs[7])loadimg(r[2],pl[0].rs[4])loadimg(r[7],pl[0].rs[5])loadimg(r[1],pl[0].rs[2])
loadimg(r[6],pl[0].rs[3])loadimg(r[0],pl[0].rs[0])loadimg(r[5],pl[0].rs[1])func img(a,b,w){mask=~(-1<<b)z=strlen(a)for(j=l=m=n=0,k=o=p=q="";j<z;++j){m=m<<6|index(cp,strat(a,j))
+0*l=l+6while(l>=b){if(p=",".(m>>(l=l-b)&mask),k=k.p,o=p.o,++n==w){(n=0,q=q.o,o="")}}}return k}star=40makeimg(bg,240,240)makeimg(bg2,240,240)set(0,0)soft1("EXIT")x=20y=20eN=0
x[1]=y[1]=x[0]=y[0]=120W=240label 0lock()if(key=scan,key&131072){end}if(key&24576?abs(vx)<4&&vx=vx+((key&24576)-12288)/4096:vx&&vx=vx-abs(vx)/vx;,vx>0){muki=0}if(vx<0){muki=1}

10 :非通知さん@アプリ起動中:2008/04/08(火) 16:16:59 ID:K4Iiysk90
その3
(y=y+vy,mx=x/20,my=y/20,px=x%20,py=y%20'下',stand=0)if(vy>=0&&((px<18&&!m[mx][1+my])||px>2&&!m[mx+1][1+my])){y=my*20*stand=!vy=0}'上'elsif(vy<0&&py&&py<18&&((px<18&&!m[mx][my])
||px>2&&!m[mx+1][my])){y=my*20+18jump=vy=0}(x=x+vx,mx=x/20,my=y/20,px=x%20,py=y%20)'右'if(vx>0&&px>2&&((py<18&&!m[mx+1][my])||py&&!m[mx+1][my+1])){x=mx*20+2}'左'
elsif(vx<0&&px<18&&((py<18&&!m[mx][my])||py&&!m[mx][my+1])){x=mx*20+18}if(key&32){if(ready&&shot<4){shot=8ready=0}}else{ready=1}if(shot){--shot}if(!stand){vy=vy+2}
if(vy>12){vy=12}if(jump){jump++if(key&4096&&jump<9){vy=-6}else{jump=0}}if(key&4096&&!jump&&stand){jump=1}if(x-120>wx){wx=x-120}if(x-120<wx){wx=x-120}if(wx<0){wx=0}if(wx>W){wx=W}
drawimg(bg,-wx,0,0)drawimg(bg2,240-wx,0,0)if(star){star--}if(star%4<2){drawimg(r[muki*5+
(shot?4:stand?vx?(ri=(ri+1)%10)/5:2;:3;;)],x-wx,y,0)}if(count++,1000<abs(tick-start)){fps=count count=0start=tick}text(fps."fps",0,226,0)unlock(1)goto 0

アクションです。ここまで作ってやめた。DLペ−ジのサンプルはよくできてるよね

11 :非通知さん@アプリ起動中:2008/04/08(火) 16:19:37 ID:K4Iiysk90
前に流行った精子ゲームのSPALM版。昔のだから画面ちっちゃいけど、自分で大きく改造してくれ
w=12HI=load()makeimg(BG,120,120)soft2("EXIT")W=132H=144goto 5label 0G=6PY=Y=59trgt(BG)P=100for(X=I=0;I<30;D[I++]=10){color(20*c=(6<c=I%15)?14-c:c;,255,c*20)frect(I*4,0,4,120)
col(126-c*18<<16)frect(I*4,10,4,100)}r=abs(rand)%5trgt(off)label 1lock()trgt(BG)if(abs(w=r+D[I-1]-59+P/2)>57-P/2||rand%30==0||!r){r=abs(rand%5)*(w<0?1:-1;)gc()}D[I]=r+D[++I-2]
color(20*c=(6<c=I%15)?14-c:c;,255,c*20)frect(x=X%120,0,4,120)col(126-c*18<<16)frect(x,D[I-1],4,P)if(X%40==0){J[x/40]=D[I-1]+abs(rand)%(--P-16)col(0x80FF80)frect(x,J[x/40],4,16)}
X=X+4G=G+((b=65536==F=scan)&&G<8)-(!b&&G>-8)if(1<<18&F){end}PY=YY=Y-Gcol(0x8080FF)line(o=(36+x)%120,PY,i=(39+x)%120,Y)line(o,PY,i,Y)line(o,PY+1,i,Y+1)disvar(D[I-30])unlock(1)trgt(off)
clip(6,12,120,120)drawimg(BG,2-x,12,0)drawimg(BG,122-x,12,0)unlock(1)sleep(60)goto 1+(abs(D[I-21]+(f=P+1>>1)-Y)>f||(X%40==4&&abs(J[((X-84)/40)%3]+8-Y)<9))*3label 5lock()col(0x8080FF)
frect(0,0,W,H)if(input(0)){goto 0}if(++w>36){w=12}elsif(w<0){w=12}col(128)farc(66-w,77-w,w*2,w*2)col(0)text("SFCave",26,35,0)col(0xFFFFFF)text("SFCave",22,39,0)text("Score:".S,8,109,0)
text("Hi-Score:".HI,8,125,0)col(0xFF0000)text("SELECT:UP",8,71,0)text("PUSH key to start!",8,87,0)unlock(1)sleep(40)goto 5label 4trgt(off)save(HI=max(S=X*3/4,HI))col(0x8080FF)
for(i=8;--i>0;){lock()frect(0,0,W,H)clip(6+(R=rand%i),12+(Q=rand%i),120,120)drawimg(BG,6-X%120+R,12+Q,0)drawimg(BG,126-X%120+R,12+Q,0)unlock(1)}clip(0,0,W,H)col(0xFF0000)
for(i=0;36>i=i+2;){arc(45-i,Y-i,i*2,i*2)}lock()col(255)text("GameOver",24,72,0)col(0xFF8000)text("Score:".S,24,95,0)unlock(1)clearkey()input()goto 5

12 :非通知さん@アプリ起動中:2008/04/08(火) 16:25:55 ID:K4Iiysk90
スマンよく見たら所々改行不足でうまくいかないところあるから、解析がてら改行入れて

13 :非通知さん@アプリ起動中:2008/04/09(水) 00:53:14 ID:+tRgaEKtO
>>8
ロックマンぽいww
絵を表示させるのすごいなぁ
精子は動くところまでは出来たけどバグで直し方わからん…

14 :非通知さん@アプリ起動中:2008/04/09(水) 01:18:05 ID:+tRgaEKtO
>>7
初めてというか小学生の時やったファミリーベーシックを思い出しつつwww

>>6にスコアをつけてスピードを調整してみた

soft1("Exit") x=120 y=120 bx=120 by=50 xy=3 cx=5 cy=4 t=0 s=0 k=strat(tick,7)
label loop
t=t+1 s=s+xy-1 k=k+1
if(k==10){k=strat(tick,8)-4} if(k<3){k=3} if(t==25){t=0 xy=xy+1}
if(scan==131072){end} if(scan==4096){y=y-6} if(scan==8192){x=x-6} if(scan==16384){x=x+6} if(scan==32768){y=y+6}
if(x<4){x=4} if(x>226){x=226} if(y<4){y=4} if(y>254){y=254}
if(bx<0){cx=k} if(bx>240-xy){cx=-k} if(by<0){cy=k} if(by>268-xy){cy=-k}
bx=bx+cx by=by+cy
lock()
col(000000) frect(0,0,240,270)
color(255,0,0) frect(bx,by,xy,xy)
color(255,255,255) text("私",x,y,HCENTERlVCENTER) text(s." kg",238,2,RIGHT|TOP)
unlock(0) sleep(0)
if(x+6<bx){goto "loop"} if(x+6>bx+xy){goto "loop"} if(y+6<by){goto "loop"} if(y+6>by+xy){goto "loop"}
hs=load() if(s>hs){hs=s} save(hs)
text("死亡",110,90,HCENTERlBOTTOM) text("HIGHSCORE",95,140,HCENTERlBOTTOM) text(hs." kg",95,170,HCENTERlBOTTOM)
sleep(5000) end

15 :非通知さん@アプリ起動中:2008/04/09(水) 09:53:56 ID:jSDZmzWN0
>>14ファミベってwwwまさかリアル世代じゃないよねww?
あと比較演算子や&&とか||は真なら数字の1をそれ以外は0を返すからそれを使えばトリッキーだけど
プログラムを短くできるよ。インタプリタでの最良の高速化は実行されるコードを短くすることだからね。
あと数式は何も無いところに書くと遅いからif文とかの括弧の中に,で区切って詰め込んだ方がいい。
(++t,s=s+xy-1,++k)てなかんじで、インクリメントも後ろに++てつけるより前に付けた方が早い。ただし
その場合数式としての返り値が変わるから気をつけたほうがいいが

16 :非通知さん@アプリ起動中:2008/04/09(水) 10:34:34 ID:0soQjdZ+O
>あと数式は何も無いところに書くと遅いからif文とかの括弧の中に,で区切って詰め込んだ方がいい。
>(++t,s=s+xy-1,++k)てなかんじで、

詳しいお願い
ezBASICの鬼の方?

17 :非通知さん@アプリ起動中:2008/04/09(水) 13:50:53 ID:+tRgaEKtO
>>15
難しいwwこうですかわかりません><

if(x+6<bx||x+6>bx+xy||y+6<by||y+6>by+xy){goto "loop"}

&&も++も知らなかったからぐぐって調べたw教えてくれてありがとう!
ファミリーベーシックじゃなくてMSXってやつだった、
貰い物だからわかんないけどやってたのは12、3年前ぐらいかなー

18 :非通知さん@アプリ起動中:2008/04/09(水) 15:39:46 ID:KhxUrKFK0
>>16
ちょwww特定されたwwwもうだいぶ前だろwwwマジ吹いたんだが
>>17
おk。まぁ、MSXとか言われても俺20歳だしPCいじり始めたの高校からだから分からんw
&&とか||は短絡回路演算子なんていわれて、式全体が真か偽か決定できれば
式の途中でも計算を中断する。17の例で言えばx+6<bxが成立すればその時点で
他三つの式は判定されない。ただしただの&とか|よりは若干処理が重いのが弱点。
これを利用してif(a==b){c=d}をa==b&&c=d;という式にすることもできる。

19 :非通知さん@アプリ起動中:2008/04/11(金) 18:41:45 ID:nnDe1nGUO
あげようか

20 :非通知さん@アプリ起動中:2008/04/11(金) 19:33:26 ID:zR33H7oC0
誰も何も作ってないんか?

21 :非通知さん@アプリ起動中:2008/04/11(金) 20:16:12 ID:1MTkHrxrO
作ってるよ

22 :非通知さん@アプリ起動中:2008/04/12(土) 22:07:58 ID:i8MiQDu4O
みんなで合作かまたは囚人のジレンマのときみたいに思考ルーチン持ち寄って遊ばないかい?

23 :非通知さん@アプリ起動中:2008/04/12(土) 22:54:11 ID:KMXERTNT0
前に見たんだがHAL研のプログラミング大会でやってた焼肉アルゴリズムとか面白いかも?
制限時間内に決められた大きさの網の上でいろんな形の肉を次々と焼いていくってやつ
詳しくはググッてくれ

24 :非通知さん@アプリ起動中:2008/04/12(土) 23:06:50 ID:i8MiQDu4O
最初だしもっと簡単なほうが参加しやすくないかな
ジレンマは協調/裏切りの二択だったけど、その時が一番盛り上がった気がする
戦車ゲームのときはあんまり人来なかったよね

25 :非通知さん@アプリ起動中:2008/04/12(土) 23:42:36 ID:Df0kNH650
どうやって人を集めるかだな。
環境として中途半端だから、物好きしか集まらないんだけどその物好きをどう引っ張ってくるか・・・

26 :非通知さん@アプリ起動中:2008/04/13(日) 00:00:46 ID:3D82O+uMO
中途半端だけど手軽なのがいいよね
まさかゲ製作から人来るでもないだろうし、地道に物好きの目に止まるのを待つしかないのかな

ちょっとライフゲームを考えてみた
捕食と繁殖を繰り返して、規定ターンでもっとも勢力の大きいアルゴリズムの勝利
まだ大雑把にしか考えてないけど、こんなんどうでしょ

27 :非通知さん@アプリ起動中:2008/04/13(日) 00:38:38 ID:dvvibXV50
ちょいムズイが2つのアルゴリズムを同時に共生させて、セルごとにどちらの勢力かを
記憶しておく、表示は赤と青みたいに色分けしとくといいだろう。
そんでサイクルアルゴリズムはそのセルを支配している方のアルゴリズムを呼び出すとかでどうだ?
そういう風にできるかどうかは確認してないがw

cell[]←こんなんがあって(0=1P,1=2P)
ループの中で
col(0xff0000-cell[i]*0xfeff01)で色を分けて表示
if(cell[i]){
 アルゴリズム1
}else{
 アルゴリズム2
}

28 :非通知さん@アプリ起動中:2008/04/13(日) 01:05:31 ID:3D82O+uMO
■■■□□←こういうイメージかな

■対□で強いほうが侵略していくような感じなのかなと想像したけど


今回は囚人のように1対1じゃなく複数のアルゴリズムを同時に動かして競わせたいな
不確定の要素の中で、もっとも効率のよいアルゴリズムを考えるの


29 :非通知さん@アプリ起動中:2008/04/13(日) 03:25:50 ID:3D82O+uMO
こんなん考えてみました

いくつかの村が共同でダムを作り、それぞれの分配を以下のようにした。
1日に貯められる水量を100とする

村長は毎日自分の村にどれくらい水を引くかを申告する(0〜100の間)
申告された一番少ない村から順番に水を分ける。もし水が途中で尽きたら終了。
同じ量の申告があれば、その村で公平に分ける(端数は切り捨て)
0を申告した村は、分配後に余った場合のみ、水を貰える(複数の村が0の時はその村で分ける)
これを複数回行い、もっとも多く水を引けた村の勝ち


A 10
B 80
C 0
D 40
E 40
F 20


まず、もっとも少ない申告をしたAに10点が入る(Cは0なので分配後の余りが入る)
次にFが20点。
DEは同じ40を申告しているが残りは70なので、35点づつが入る
これで水は全て分配されたので、0を申告したCと80を申告したBには1点も加わることなく分配が終わる



30 :非通知さん@アプリ起動中:2008/04/13(日) 03:53:33 ID:3D82O+uMO
よくよく考えたら水量/村数より小さくする意味がないじゃないかorz
村が5個なら20に設定すれば間違いなく20だけ入るから、それ以下にするメリットがないんだ

31 :非通知さん@アプリ起動中:2008/04/13(日) 09:19:33 ID:1hPLqgqq0
なんかイメージが沸くなと思ったらニコにそんな動画があったんだわ
ttp://www.nicovideo.jp/watch/sm766671

32 :非通知さん@アプリ起動中:2008/04/13(日) 11:11:54 ID:3D82O+uMO
>>31
これライフゲームだよね?

33 :非通知さん@アプリ起動中:2008/04/13(日) 11:48:47 ID:63GW/kHU0
そうだよ。上の方の話へのレスね

34 :非通知さん@アプリ起動中:2008/04/14(月) 13:07:41 ID:302iP7wgO
ロボットサッカーなんてどうかな
2対2または3対3で、一人一人がそれぞれのロボットのアルゴリズムを作って戦わせるの

35 :非通知さん@アプリ起動中:2008/04/14(月) 14:52:38 ID:302iP7wgO
soft1("END")
Bx=115 By=70
label loop
if(scan==131072){end}
lock()
clear(0,0,240,420)
rect(10,10,220,140)
rect(0,55,10,40) rect(230,55,10,40)
line(120,10,120,150) arc(100,55,40,40)
arc(Bx,By,10,10)
unlock(0)
sleep(6)
goto "loop"

見た目だけだけどこんな感じでどうでしょ

36 :非通知さん@アプリ起動中:2008/04/14(月) 20:49:12 ID:oJQXrOob0
アルゴリズムを作るうえでの決まりは?
ルールとかどんなんなん?

37 :非通知さん@アプリ起動中:2008/04/14(月) 21:21:28 ID:302iP7wgO
soft1("END")
Bx=115 By=70
P1x=20 P1y=75
label loop
if(scan==131072){end}
#P1のアルゴリズム#
lock()
clear(0,0,240,420)
rect(10,10,220,140)
rect(0,55,10,40)rect(230,55,10,40)
line(120,10,120,150)arc(100,55,40,40)
color(255,0,0)
farc(P1x+VekP1x,P1y+VekP1y,15,15)

Bx=Bx+VEKx By=By+VEKy
unlock(0)
sleep(60)
col(000000)
goto "loop"

見づらいわかりづらいけど勘弁してくだしあ
以前の戦車ゲームと同じく、本体でプレイヤーとボールを動かそうかなと
アルゴリズムで行動(縦に動く、横に動くなど)を選択してその値を本体に返し、プレイヤーを動かすってのでどうでしょ
つまり選手の性能は全て一緒

38 :非通知さん@アプリ起動中:2008/04/14(月) 22:01:34 ID:oJQXrOob0
なんと素人臭いプログラム。昔の俺を思い出すよ
背景はmakeimgで作った画像に描いておけば背景表示は画像表示1回分で済むよ
アルゴリズムってとこで参照してもいい変数、変更してもいい変数っての決めておかないと
だめやね

39 :非通知さん@アプリ起動中:2008/04/14(月) 22:07:44 ID:302iP7wgO
だって素人だもの みつを
ローグライクのときも自分が出したソースを手直ししてもらいながら作っていたよ
気が付いたところは手直ししてくれると嬉しい

本体
soft1("END")
Bx=110 By=70
label loop
if(scan==131072){end}
#TEST#
lock()
clear(0,0,240,420)
rect(10,10,220,140)
rect(0,55,10,40)rect(230,55,10,40)
line(120,10,120,150)arc(100,55,40,40)arc(Bx,By,10,10)
unlock(0)
Bx=Bx+(VB*VBx)By=By+(VB*VBy)
if(VB>0){VB--}
else{VBx=0 VBy=0}
sleep(60)
goto "loop"


#TEST#
KEY=input(0)
if(VB==0){
if(KEY==4){VBy=-1 VB=15}
elsif(KEY==16){VBx=-1 VB=10}
elsif(KEY==64){VBx=1 VB=10}
elsif(KEY==256){VBy=1 VB=10}
}

40 :非通知さん@アプリ起動中:2008/04/14(月) 22:13:17 ID:302iP7wgO
変数はあとから決めるとして、本体ちょこっとだけ作ってみようと思いました
まだ何も決めてない選手はあとでということで先にボールの動きだけをやろうかと思って

Bx=Bx+(VB*VBx)By=By+(VB*VBy)
if(VB>0){VB--}
else{VBx=0 VBy=0}


VB ボールの持つエネルギー
VBx,VBy ボールのエネルギーの方向(1,0,-1)
ボールは常にエネルギーの向きに対して-1の抵抗を受ける

としましたが、全くボールらしくないorz

41 :非通知さん@アプリ起動中:2008/04/14(月) 22:18:22 ID:302iP7wgO
参照してもいい変数
各プレイヤーのx,y
ボールのx,y
ボールの力の強さVB
ボールの力の向きVBx VBy
作戦 TAC(チームごとに自由)

変更してもいい変数
自分プレイヤーのベクトル、というのかな。xに動くかyに動くか
作戦 TAC

こんなものかな

42 :非通知さん@アプリ起動中:2008/04/15(火) 18:20:38 ID:zD9ZXNwY0
まぁ、なんだ。配列とか使えるかな?

43 :非通知さん@アプリ起動中:2008/04/15(火) 18:31:27 ID:XQ/6oZ5qO
配列[i][j]

本当に最低限のことは多少は
なんだか最初からサッカーを作るのは無謀だよね

44 :非通知さん@アプリ起動中:2008/04/15(火) 19:14:33 ID:9wFiYAHj0
そんなことは無いが、プレイヤーの位置とかの変数は配列にして
変数名を一つにしとかないと大変だろ?

45 :非通知さん@アプリ起動中:2008/04/15(火) 20:16:17 ID:XQ/6oZ5qO
PL[i][j]

i=PL_No 1〜6
1〜3 A軍
4〜6 B軍

j=1 PL_x
j=2 PL_y
j=云々

てこういうこと?

フィールドを18×3+2(ゴール)マスにしたほうがいいのかな
 □□□□□□
G□□□□□□G
 □□□□□□

46 :非通知さん@アプリ起動中:2008/04/15(火) 21:24:06 ID:9wFiYAHj0
まぁ、そんなようなこと
あと、そもそもマスにする必要は無いと思うが

47 :非通知さん@アプリ起動中:2008/04/15(火) 22:48:18 ID:M2xDEDuIO
難しそうだな・・・

俺はHSPぐらいしか無理だぜ

48 :非通知さん@アプリ起動中:2008/04/16(水) 11:21:06 ID:X4rFddTAO
HPSとそんな変わらないと思うよ



ところでサッカーもいいけど囚人のジレンマみたいにしたテキストベースのゲームってみんな興味ないかな

22 KB
■ このスレッドは過去ログ倉庫に格納されています

★スマホ版★ 掲示板に戻る 全部 前100 次100 最新50

read.cgi ver 05.04.00 2017/10/04 Walang Kapalit ★
FOX ★ DSO(Dynamic Shared Object)