[過去ログ] 【初心者】課題をクリアしていくスレ【講習会】 (787レス)
1-

このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
354: 名前は開発中のものです。 [sage] 04/07/15 22:52 ID:7EJWxb81(2/2) AAS
function main(){
clearTimeout(timerID);
charElm.style.left = x += k[37] && x ? -8 : k[39] && x < 608 ? 8 : 0;
charElm.style.top = y += k[38] && y ? -8 : k[40] && y < 448 ? 8 : 0;
for (var i = 0; i < 3; i++)
if (miA[i]){
if (miY[i] < -20) miA[i] = false;
miE[i].style.top = miY[i] -= 8;
}else if (k[90]){
k[90] = 0; miA[i] = true;
miE[i].style.left = miX[i] = x + 15; miE[i].style.top = miY[i] = y - 16;
}
var enBMX = enMX, enBMY = enMY;
for (var i = 0; i < 6; i++)
if (enA[i]){
enE[i].style.left = enX[i] += enBMX; enE[i].style.top = enY[i] += enBMY;
enMX = enX[i] > 608 ? -2 : enX[i] < 0 ? 2 : enMX;
if (enX[i] > 608 || enX[i] < 0) enMY = 32;
if (Math.abs(x - enX[i]) < 32 && Math.abs(y - enY[i]) < 32 || enY[i] > 448) GameOver = true;
for (var j = 0; j < 3; j++)
if (miA[j] && miX[j] - enX[i] < 32 && enX[i] - miX[j] < 2 && miY[j] - enY[i] < 32 && enY[i] - miY[j] < 16){
enA[i] = miA[j] = false; enE[i].style.top = miE[j].style.top = -40;
break;
}
}
if (enBMY == 32) enMY = 0;
timerID = GameOver ? 0 : setTimeout(main, 30);
}//--></script></body></html>
355: 134 [sage] 04/07/16 10:38 ID:9OMAGGSs(1/2) AAS
ライフゲームを検索で見てみましたけど、これは二次元配列の処理がオセロみたいな感じになりそうですね
それで、存在しない配列を参照するバグ続出…
356: 名前は開発中のものです。 [sage] 04/07/16 11:55 ID:yFlo2kjF(1) AAS
>>352
352(1): 名前は開発中のものです。 [sage] 04/07/15 22:42 ID:mfzLmHcI(15/15) AAS
と思ったら4様もキタ━━━━━━(゚∀゚)━━━━━━ !!
了解しました>初期化は省きましょう
サンプルそのままなんで見る意味もないですし
課題に関係がある所だけ貼って後はろだにうぷするのがバランスいいかな

>>348
連貼りするのは生理的に受け付けないのに我慢してやってるんだから
酷いこといわないでよヽ(`Д´)ノ
「4様」って某韓国俳優のミーハーみたいで何かやだなw
357: 134 [sage] 04/07/16 23:21 ID:9OMAGGSs(2/2) AAS
ライフゲームっぽいものが途中まで出来ました。

まだ、初期位置が決められないのと、予測していた動きにならないので、バグがあると思います。
あと、ソースを見ると分かりますが、判定部分がかなりいいかげんというか、面倒な事をやってます

外部リンク[lzh]:gamdev.org
358: x≠先生かつx=生徒 ⇒ x=俺 [sage] 04/07/17 14:27 ID:qbj2jGXO(1) AAS
外部リンク[zip]:gamdev.org

ライフゲーム with HSP
正常に動作するか怪しいけど…。
359: 134 [sage] 04/07/17 22:23 ID:s02d0Ih2(1) AAS
VB製ライフゲーム改良型です。一応、option.txt内を0か1に書き換えれば初期位置を変更できます。
あと、動きのバグも直しました。やはり、長めのロジックは良くないみたいです。

ちなみに、option.txt内の一番下の行の数値を換えると、進行スピードが変わります
(数値が小さい程スピードが速くなる)

外部リンク[lzh]:gamdev.org
360
(1): 名前は開発中のものです。 [sage] 04/07/18 01:40 ID:C6k4fMne(1) AAS
ライフゲームいいねぇ。シムシティで町を育てるの思い出した。原理的には同じだよね。
361: 名前は開発中のものです。 [sage] 04/07/18 16:26 ID:yH4KfJO3(1/2) AAS
課題6当たり判定
外部リンク[zip]:gamdev.org
362
(1): 名前は開発中のものです。 [sage] 04/07/18 17:00 ID:krHEjaY8(1/3) AAS
それSTGスレの課題じゃね?
363
(1): 名前は開発中のものです。 [] 04/07/18 17:14 ID:yH4KfJO3(2/2) AAS
>>362
【初心者】課題をクリアしていくスレ【講習会】まとめ
外部リンク:gamdev.org

【初心者】課題をクリアしていくスレ【講習会】まとめ
外部リンク:gamdev.org

【初心者】課題をクリアしていくスレ【講習会】まとめ
外部リンク:gamdev.org

【初心者】課題をクリアしていくスレ【講習会】まとめ
外部リンク:gamdev.org

【初心者】課題をクリアしていくスレ【講習会】まとめ
外部リンク:gamdev.org
364
(1): 名前は開発中のものです。 [] 04/07/18 17:28 ID:Cpcq6TmO(1) AAS
4つの整数を引数として渡して、その4つから最小値を返す関数を作りたいのですが、いい考えが浮かびません。
賢い皆さんお願いします。
365: x≠先生かつx=生徒 ⇒ x=俺 [sage] 04/07/18 17:35 ID:8PWFdHyU(1/2) AAS
int min4(int n1, int n2, int n3, int n4)
{
    if(n1 > n2) n1 = n2;
    if(n1 > n3) n1 = n3;
    if(n1 > n4) n1 = n4;
    return n1;
}
366: 名前は開発中のものです。 [sage] 04/07/18 17:35 ID:krHEjaY8(2/3) AAS
>>363
失礼いたしました。

>>364
ネタ? 普通に順番に比較するんじゃダメ?
int min(int n[], int size){
  int min = INT_MAX, i = 0;
  for(i = 0; i < size; i++)
    if(min > n[i]) min = n[i];
  return min;
}
367
(1): 名前は開発中のものです。 [sage] 04/07/18 17:57 ID:zInWmaTA(1) AAS
アホみたくそのままの
仕様で書いてるな。
368: x≠先生かつx=生徒 ⇒ x=俺 [sage] 04/07/18 18:27 ID:8PWFdHyU(2/2) AAS
どうしろと・・・。
369
(1): 名前は開発中のものです。 [sage] 04/07/18 19:20 ID:krHEjaY8(3/3) AAS
外部リンク[zip]:gamdev.org
ライフゲーム Java-Swing版っす。
370: 名前は開発中のものです。 [sage] 04/07/19 01:02 ID:trLHjf+G(1) AAS
>>367
4つぐらいならこれでいいんじゃない?
371: 369 [sage] 04/07/19 01:56 ID:84bjiiMx(1) AAS
外部リンク[lzh]:gamdev.org
ライフゲームJava-Swing版、いちおう最終版のつもり。

スピード度外視で、JComponent 使いまくり。かなり重いです。
Cellの数を自由に変えられるように作ったのですが、うちの環境
だとまともに動くのは25x25くらいまで。
それ以上は、一応動くけど超スローモーション。ダメダメですわ。

Javaとはいえ、もうチョイなんとかなる筈。絶対なる。
改良するかは未定。

>>369 のリンク、拡張子間違ってました。スマソ。
372: HSPが初プログラム [sage] 04/07/19 11:07 ID:SY/zAMfR(1) AAS
ライフゲームがどんな物かはわかったんですが、
升目は幾つぐらいがいいのでしょうか?
373: 名前は開発中のものです。 [sage] 04/07/19 11:10 ID:OTj45Fw+(1) AAS
設定で好きなように変えられるように作ると良い。
374: 名前は開発中のものです。 [sage] 04/07/19 22:54 ID:E1i61iky(1) AAS
最初は少なく10*10程度で作っておいて、だんだん広げていけば?
遅くなったようならそれまでにすればいいし。
375: 名前は開発中のものです。 [sage] 04/07/19 23:41 ID:sgE8uFHh(1) AAS
課題8弾を撃って貰います
外部リンク[zip]:gamdev.org
376: 名前は開発中のものです。 [sage] 04/07/20 00:57 ID:dOIeUq82(1) AAS
課題10 インベダ風移動(GameMaker)
外部リンク[zip]:gamdev.org
377: 名前は開発中のものです。 [sage] 04/07/20 17:58 ID:5+HMeKnI(1/2) AAS
課題11 ライフゲーム

<html><head><style type="text/css"><!--
.cell{border:1px solid Black;font-size:10px;color:Red;padding:0px;width:10px;height:10px;}
--></style></head><body onload="resize()">
<input type=button onclick="doing = !doing;this.value=doing?'停止':'開始';go()" value="開始">
<input type=button value="ランダム" onclick="setField(1)"><input type=button value="クリア" onclick="setField(0)"><br>
横<input id=horz type=text value="20"><br>縦<input id=vert type=text value="20"><input type=button value="設定" onclick="resize()">
<div id=field></div><script language="Javascript"><!--
var cols, rows, timerID, doing = false, map = new Array(), elms = new Array();
function setField(k){
if (doing) return;
for (i = 0; i < cols * rows; i++){
map[i] = k ? Math.floor(Math.random() * 2) : 0;
elms[i].innerHTML = map[i] == 1 ? '●' : ' ';
}
}
function resize(){
if (doing) return;
cols = document.getElementById('horz').value - 0;
rows = document.getElementById('vert').value - 0;
var str = '<table cellspacing=0 style="cursor:pointer;">';
for (var i = 0; i < rows; i++){
str += '<tr>';
for (var j = 0; j < cols; j++){
num = i * cols + j;
str += '<td id='+num+' class=cell onclick="set(this)"> </td>';
map[num] = 0;
378: 名前は開発中のものです。 [sage] 04/07/20 17:59 ID:5+HMeKnI(2/2) AAS
}
str += '</tr>';
}
document.getElementById('field').innerHTML = str + '</table>';
for (i = 0; i < cols * rows; i++) elms[i] = document.getElementById(i + '');
}
function set(elm){
if (doing) return;
map[elm.id] = 1 - map[elm.id];
elm.innerHTML = map[elm.id] ? '●' : ' ';
}
function get(y, x){
if (x < 0 || y < 0 || x > cols - 1 || y > rows - 1) return 0;
return map[y * cols + x];
}
function go(){
clearTimeout(timerID);
var newMap = new Array();
for (i = 0; i < rows; i++){
for (j = 0; j < cols; j++){
next = get(i-1,j-1) + get(i-1,j) + get(i-1,j+1) + get(i,j-1) + get(i,j+1) + get(i+1,j-1) + get(i+1,j) + get(i+1,j+1);
newMap[i * cols + j] = (next == 2) ? map[i * cols + j] : (next == 3) ? 1 : 0;
}
}
for (i = 0; i < cols * rows; i++){
map[i] = newMap[i];
elms[i].innerHTML = (map[i] == 1) ? '●' : ' ';
}
timerID = doing ? setTimeout(go, 500) : 0;
}
//--></script></body></html>
1-
あと 409 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル

ぬこの手 ぬこTOP 0.023s