[過去ログ]
【初心者】課題をクリアしていくスレ【講習会】 (787レス)
【初心者】課題をクリアしていくスレ【講習会】 http://mevius.5ch.net/test/read.cgi/gamedev/1086858349/
上
下
前
次
1-
新
通常表示
512バイト分割
レス栞
このスレッドは過去ログ倉庫に格納されています。
次スレ検索
歴削→次スレ
栞削→次スレ
過去ログメニュー
286: 4 ◆3VUXqvbfSY [] 04/07/08 19:00 ID:xmAVGw0W なんか…確かに素数ばっかりに見えますが…違うんですよ。 素数で詰まってる人が多いってだけで… あとですね…ボールが跳ね返るシミュレーション、ジャンプに使いますかねぇ? マリオが勝手に地面で跳ね返ったら、俺は切れますがw …ああ、何時になったらインベーダーが…本来なら、そろそろ、赤い四角に弾でも撃って貰おうと思ってたんですが… わかりました。二つ出します メイン課題 前の、赤い四角に弾を撃って貰います。さらに前課題の降ってくる物体と相殺させて下さい。 弾丸は横2ドット、縦16ドットで黄緑色 動きは Y座標(初期値は赤い四角のY座標+16)その後Y--; X座標(初期値は赤い四角のX座標÷2)その後固定; 当たった時点もしくは、画面外にでたら再発射が可能となる。 基本一発。ただし、複数発実装できるならしても良い。 課題外伝 ボールの跳ね返りシミュ ボールを(0,0)から水平投射する。(速度は自由) 床の反発係数は0.8 壁は1.0 重力加速度は10m/s^2 http://mevius.5ch.net/test/read.cgi/gamedev/1086858349/286
287: 名前は開発中のものです。 [sage] 04/07/08 20:05 ID:kembbGf8 トランポリンでも使うつもりなんですかね ジャンプで跳ね返りって… そいやマリオには敵ふんだときちょっと浮くけどあれなのかな・・・ http://mevius.5ch.net/test/read.cgi/gamedev/1086858349/287
288: 名前は開発中のものです。 [sage] 04/07/08 21:00 ID:gJH4XEvh 名古屋撃ちのために、実装しない方向で行こう。。。 >>286 こんな感じでOK? #include "hspext.as" screen 2, 300, 100, 4: title "Config" pos 5, 8: mes "初速:": pos 50, 5: input speed, 215, 25: pos 270, 8: mes "m/s" pos 5, 38: mes "角度:": pos 50, 35: input angle, 210, 25: pos 265, 38: mes "/255" pos 5, 70: objsize 290, 25: button "Start", *start gsel 0: stop *start cls emsin sin, angle: emcos cos, angle mx = speed * sin / 255: my = speed * cos / 255 x = 320000: y = 240000: pos x/1000, y/1000 repeat x += mx: y -= my: my -= 10 if x<0: x=0: mx = -mx if x>640000: x=640000: mx = -mx if y>480000: y=480000: my = -my * 8 / 10: if my<80: my = 0: stop line x / 1000, y / 1000 wait 1 loop stop http://mevius.5ch.net/test/read.cgi/gamedev/1086858349/288
289: 名前は開発中のものです。 [sage] 04/07/08 23:33 ID:UCn/khb4 #include "hspext.as" #const G 10 #const Coeff 10 #const Wall_e 10 #const Floor_e 8 screen 0, 640, 480, 1 dim sin,256 :dim cos,256 repeat 256 :emsin sin.cnt,cnt :emcos cos.cnt,cnt :loop screen 2, 150, 100, 4: title "Config" pos 5, 8: mes "初速:": pos 50, 5: input V, 50, 25: pos 100, 8: mes "m/s" pos 5, 38: mes "角度:": pos 50, 35: input C, 50, 25: pos 100, 38: mes "°" pos 5, 70: objsize 120, 25: button "Start", *main gsel 0 :stop *main if V > 29000 : 29000 if C > 90 : C = 90 C = C * 256 / 360 :Vx = V :Vy = V :Ycnt = 0 :x = 0 :y = 0 repeat redraw 0 :await 1 color 255,255,255 :boxf :color 255,0,0 :pos 0, 460 : mes "■" :color 0,0,255 :line 0, 475, 640, 475 color 0,0,0 :x += Vx * (-cos.C) / 256 :y += Vy * sin.C / 256 - (G * Ycnt) if x / 1000 < 0 :Vx = -Vx * Wall_e / Coeff :x = 0 if x / 1000 > 624 :Vx = -Vx * Wall_e / Coeff :x = 624000 Ycnt++ :if y < 0 :Vy = Vy * Floor_e / Coeff :y = 0 :Ycnt = 0 pos x / 1000, -y / 1000 + 460 : mes "○" :if cnt > 0 & (Vy <= 0) :break redraw 1 :loop :stop 投下 http://mevius.5ch.net/test/read.cgi/gamedev/1086858349/289
290: x≠先生かつx=生徒 ⇒ x=俺 [sage] 04/07/09 00:10 ID:bufBX0Vb #include "hspext.as" screen 2, 300, 100, 4: title "Config" pos 5, 8: mes "初速:": pos 50, 5: input speed, 215, 25: pos 270, 8: mes "m/s" pos 5, 38: mes "角度:": pos 50, 35: input angle, 210, 25: pos 265, 38: mes "/255" pos 5, 70: objsize 290, 25: button "Start", *start gsel 0: stop *start cls emsin sin, angle: emcos cos, angle mx = speed * sin / 255: my = speed * cos / 255 x = 320000: y = 240000: pos x/1000, y/1000 repeat ox = x: oy = y: x += mx: y -= my: my -= 10 if x<0: x=0: mx = -mx if x>624000: x=624000: mx = -mx if y>464000: y=464000: mx = mx * 8 / 10: my = -my * 8 / 10: if my<80|(mx==0): my = 0: stop ;redraw 0 color 255, 255, 255: pos ox/1000, oy/1000: mes "○" color 0, 0, 0: pos x/1000, y/1000: mes "○" ;redraw 1 wait 1 loop stop 改造版。 >>289 スゲー・・・ http://mevius.5ch.net/test/read.cgi/gamedev/1086858349/290
291: C / HSPの生徒 orz [sage] 04/07/09 10:25 ID:nlM8j7wC >>286の課題作ってみたが、ゲーム性を考えて数値をアレンジしています。 #define RED_SIZE 32 #define ENEMY_SIZE 32 #define MOVE_TIME 32 #define OBJ_SX 2 #define OBJ_SY 16 #define OBJ_SPEED 16 randomize width 640, 480 red_x = 640 - RED_SIZE / 2:red_y = 480 - RED_SIZE repeat redraw 2:color 255, 255, 255:boxf if enemy_stat = 0:enemy_y = -ENEMY_SIZE:enemy_stat = 1:title "C / HSPの生徒 orz 撃破数: "+obj_cnt enemy_timer++:if enemy_timer > MOVE_TIME:enemy_timer = 0 if enemy_timer = 0:rnd enemy_x, 640 - ENEMY_SIZE stick key, 15:if key & 1{red_x-4}if key & 4{red_x+4} stick key, 16:if key = 16 & (obj_stat = 0){ obj_stat = 1:obj_x = RED_SIZE / 2 - (OBJ_SX / 2) + red_x:obj_y = red_y - 16} if (enemy_x < obj_x) & (obj_x + OBJ_SX < (enemy_x + ENEMY_SIZE)) { if (enemy_y < obj_y) & (obj_y + OBJ_SY < (enemy_y + ENEMY_SIZE)) { obj_cnt++:obj_stat = 0:enemy_stat = 0:color 255, 0, 0:boxf} }if obj_y + OBJ_SY < 0:obj_stat = 0 if enemy_stat:color 100, 100, 200:boxf enemy_x, enemy_y, enemy_x + ENEMY_SIZE, enemy_y + ENEMY_SIZE color 200, 100, 100:boxf red_x, red_y, red_x + RED_SIZE, red_y + RED_SIZE if obj_stat:color 100, 200, 100:boxf obj_x, obj_y, obj_x + OBJ_SX, obj_y + OBJ_SY:obj_y-OBJ_SPEED enemy_y++:if enemy_y > 480{enemy_stat = 0}await 20:redraw 1 loop http://mevius.5ch.net/test/read.cgi/gamedev/1086858349/291
292: 285 [sage] 04/07/09 10:46 ID:mw4kM0V8 すまん、言葉足らずだった。 ジャンプの軌道の加速減速だ。 ボールが跳ねるって部分は蛇足だったな。 http://mevius.5ch.net/test/read.cgi/gamedev/1086858349/292
293: 285 [sage] 04/07/09 10:48 ID:mw4kM0V8 >ボールが跳ねるって部分は蛇足だったな。 ↓ >ボールが跳ねるって言い方は変だったな。 言葉足らずって言うより、俺、言い回しが変だね。 http://mevius.5ch.net/test/read.cgi/gamedev/1086858349/293
294: 名前は開発中のものです。 [sage] 04/07/09 16:12 ID:o2BnBgF7 >>277 平方根以下の素数で割り切れるかを調べればいいので11*13(=143)をチェックする場合、 143の平方根が11.958......なので2〜11の数で割り切れるか調べればよい 11で割り切れるので素数ではないことがわかる http://mevius.5ch.net/test/read.cgi/gamedev/1086858349/294
295: 名前は開発中のものです。 [sage] 04/07/09 19:10 ID:o2BnBgF7 似たような事やってるスレみつけてきた [VB] 初心者に課題を [.net] http://pc5.2ch.net/test/read.cgi/tech/1048173861/ http://mevius.5ch.net/test/read.cgi/gamedev/1086858349/295
296: 名前は開発中のものです。 [sage] 04/07/09 22:13 ID:2xcy471S <html><body onload="go()"> 角度<input type="text" value="45" id=ra>度<br> 初速<input type="text" value="1000" id=sp>m/s<br> <input type="button" value="GO" onclick="go()"><script> elm=new Array(); for(i=0;i<128;i++){ elm[i]=document.createElement('div'); elm[i].style.position='absolute'; elm[i].style.font='normal normal normal 7px "MS ゴシック"'; elm[i].innerHTML='■'; document.body.appendChild(elm[i]); } function go(){ r=document.getElementById('ra').value; s=document.getElementById('sp').value; document.getElementById('ra').value=r=(r>89)?89:(r<0)?0:r; document.getElementById('sp').value=s=(s>29000)?29000:(s<1)?1:s; for(i=0;i<128;i++){ y=0; rd=r/180*Math.PI; for(j=0;j<5000*i/s/Math.cos(rd);j++) y+=(s-10*j)*Math.sin(rd); if(y<0)y=0; elm[i].style.left=i*5; elm[i].style.top=475-y/1000; } } </script></body></html> http://mevius.5ch.net/test/read.cgi/gamedev/1086858349/296
297: HSPが初プログラム@生徒希望 [sage] 04/07/09 22:49 ID:nI9aNbgB 一応あってますか? 課題2小さい方から1000個の素数 sdim m,4000 : notesel m mesbox m,640,480 n=2 : c=1 : j=1 *judge if n-1=j : goto *pn j+ if n \ j=0 : n+ : j=1 wait 1 goto *judge *pn c+ noteadd ""+n if c=1000 : goto *finish n+ : j=1 wait 1 goto *judge *finish objprm 0, m stop 激しく遅いですが… http://mevius.5ch.net/test/read.cgi/gamedev/1086858349/297
298: 名前は開発中のものです。 [sage] 04/07/09 23:19 ID:JPrr+eC9 >>297 初期値の c は0にしないと、一つ少なくなるよ http://mevius.5ch.net/test/read.cgi/gamedev/1086858349/298
299: HSPで素数 [] 04/07/10 08:28 ID:gc5EpECZ #include "hspext.as" False=0:True=1:count++:i=3 mes "計算中......" while count<1000 sosu=True j=3 emsqr chk,i chk=chk>>4 while j<=chk if (i \ j)=0 { sosu=False _break } j=j+2 wend if sosu=True { // cls // mes i EndNum=i count++ } i=i+2 gettime NowTime, 6 if (NowTime!=BeforeTime) { BeforeTime=NowTime wait 1 } wend mes "計算終了。"+count+"個目の素数は"+EndNum+"です。" stop mes http://mevius.5ch.net/test/read.cgi/gamedev/1086858349/299
300: 名前は開発中のものです。 [sage] 04/07/10 14:33 ID:/RFPsMma ゲムが完成するのは10後くらいの気がするのは私だけだろうか http://mevius.5ch.net/test/read.cgi/gamedev/1086858349/300
301: 名前は開発中のものです。 [sage] 04/07/10 15:30 ID:wQKs6GiV このスレ遠回りしすぎ。 素数とか必要になったときにやればいいのに。 ゲーム製作に必ず必要なものではない。 http://mevius.5ch.net/test/read.cgi/gamedev/1086858349/301
302: 名前は開発中のものです。 [sage] 04/07/10 16:06 ID:qklEKUA/ HSPにまともなゲームが無いのはゲームに関係無い事ばかりに力入れてる厨房ばかりだからじゃないか?w http://mevius.5ch.net/test/read.cgi/gamedev/1086858349/302
303: 名前は開発中のものです。 [] 04/07/10 16:07 ID:gc5EpECZ 弾発射の課題で弾の色が黄緑が指定されてたので調べてきました JISで決まってるようです #BBC000(187,192,0) http://www5d.biglobe.ne.jp/~m_any-dg/jisiro_wabun.html http://mevius.5ch.net/test/read.cgi/gamedev/1086858349/303
304: 285 [sage] 04/07/10 19:01 ID:EpDrHTyy >301 俺もそう思った。上から落ちてくるものを受け止めるとか そういう簡単なゲームを作ったみたほうがいいんじゃないかと。 http://mevius.5ch.net/test/read.cgi/gamedev/1086858349/304
305: 名前は開発中のものです。 [sage] 04/07/10 19:02 ID:EpDrHTyy しまった、名前欄そのままだった_| ̄|○ http://mevius.5ch.net/test/read.cgi/gamedev/1086858349/305
306: HSPで素数 エラトステネスの篩い [] 04/07/10 19:34 ID:gc5EpECZ #include "hspext.as" True=1 False=0 Max=7920 Dim SosuList, Max emsqr chk,Max chk=chk>>4 mes "計算中......" i=3 while i<=chk j=i+i while j<Max SosuList.j=True j=j+i wend i=i+2 wend i=3 sum=1 while i<Max if SosuList.i=False { sum++ } i=i+2 wend mes "合計"+sum+"個の素数を発見しました。" stop http://mevius.5ch.net/test/read.cgi/gamedev/1086858349/306
307: HSPが初プログラム@生徒希望 [sage] 04/07/10 21:23 ID:+13mwptL >>298 あ、それはちょっと変更ミスです。 >>297で一応合ってるんでしょうか? http://mevius.5ch.net/test/read.cgi/gamedev/1086858349/307
308: HSPが初プログラム@生徒希望 [sage] 04/07/10 21:53 ID:+13mwptL 連レススマソ こうするとちょっと早くなりました sdim m,4000 : notesel m mesbox m,640,480 n=2 : c=0 : j=1 *judge if n-1=j : goto *pn j+ if n \ j=0 : n+ : j=1 await goto *judge *pn c+ noteadd ""+n if c=1000 : goto *finish n+ : j=1 goto *judge *finish objprm 0, m stop http://mevius.5ch.net/test/read.cgi/gamedev/1086858349/308
309: 名無しさん@そうだ選挙に行こう [] 04/07/11 07:11 ID:q09vifT2 課題8 メイン課題 弾を撃って貰います http://gamdev.org/up/img/828.zip http://mevius.5ch.net/test/read.cgi/gamedev/1086858349/309
310: 名無しさん@そうだ選挙に行こう [sage] 04/07/11 08:10 ID:k56A1TFY 課題8 Zで弾発射 <html><head><title>Invader Game?</title><style type="text/css"><!-- .ch{position:absolute;width:32px;height:32px;} .self{background-color:#FF0000;}.enemy{background-color:#0000FF;} .missile{background-color:#BBC000;position:absolute;width:2px;height:16px;top:-20px;} --></style></head> <body onLoad="main()" onKeyDown="k[event.keyCode]=1" onKeyUp="k[event.keyCode]=0"> <div id=char class="self ch"></div><div id=enemy class="enemy ch"></div> <div id=mi0 class=missile></div><div id=mi1 class=missile></div><div id=mi2 class=missile></div> <script language="Javascript"><!-- var timerID, k = [];var x = 304, y = 448, charElm = document.getElementById('char'); var eX, eY = 480, enemyElm = document.getElementById('enemy'); var miE = [], miA = [], miX = [], miY = []; for (i = 0; i < 3; i++){miE[i] = document.getElementById('mi' + i);miA[i] = false;miY[i] = -20;} function setEnemy(){eY = -32;enemyElm.style.left = eX = Math.floor(Math.random() * 640);} function main(){clearTimeout(timerID); x += k[37] && x ? -8 : k[39] && x < 608 ? 8 : 0;y += k[38] && y ? -8 : k[40] && y < 448 ? 8 : 0; charElm.style.left = x;charElm.style.top = y; for (i = 0; i < 3; i++){if (miA[i]){ if (miY[i] < -20) miA[i] = false; if (Math.abs(miX[i] - eX - 15) < 17 && Math.abs(miY[i] - eY - 15) < 23){ miA[i] = false;miY[i] = -20;setEnemy();} miE[i].style.top = miY[i] -= 8; }else if (k[90]){miA[i] = true;miE[i].style.left = miX[i] = x + 15;miE[i].style.top = miY[i] = y - 16; k[90] = 0;break;}} if (eY > 480) setEnemy();enemyElm.style.top = eY += 8; if (Math.abs(x - eX) > 32 || Math.abs(y - eY) > 32) timerID = setTimeout(main, 30); }//--></script></body></html> http://mevius.5ch.net/test/read.cgi/gamedev/1086858349/310
メモ帳
(0/65535文字)
上
下
前
次
1-
新
書
関
写
板
覧
索
設
栞
歴
あと 477 レスあります
スレ情報
赤レス抽出
画像レス抽出
歴の未読スレ
AAサムネイル
Google検索
Wikipedia
ぬこの手
ぬこTOP
0.021s