1 :以下、?ちゃんねるからVIPがお送りします 2018/07/31(火) 22:29:11 ID:8zXtTy0P0.net
わかんないよお!!
3 :以下、?ちゃんねるからVIPがお送りします 2018/07/31(火) 22:31:35 ID:dSGDy9X+M.net
class Dog(Animal)
4 :以下、?ちゃんねるからVIPがお送りします 2018/07/31(火) 22:31:44 ID:xSEgvn490.net
犬に聞くのが間違ってる
インコに聞け
5 :以下、?ちゃんねるからVIPがお送りします 2018/07/31(火) 22:31:49 ID:NyhD/tFa0.net
オブジェクト指向は愚かな考え
排便メソッドを実装した人間クラスから美少女クラスが作れない
12 :以下、\(^o^)/でVIPがお送りします 2018/07/31(火) 22:36:44 ID:vFDlnk+Z0.net
>>5
そしたら人間クラスの粒度をもっと荒くして人間クラスを継承した愚民クラスと美少女クラスを作ればいいのでは
16 :以下、?ちゃんねるからVIPがお送りします 2018/07/31(火) 22:41:30 ID:g7MV7gUIM.net
>>5
俺なら排便メソッドオーバーライドしてわたあめリターンするわ
6 :以下、?ちゃんねるからVIPがお送りします 2018/07/31(火) 22:32:53 ID:8zXtTy0P0.net
例えばぼくの家にぼくと犬がいるとするじゃん?
の前に
家クラスを作るじゃん?
で、なんかひとつクラス作って
家クラスとぼくと犬を宣言するじゃん?
ここまではあってる?
7 :以下、?ちゃんねるからVIPがお送りします 2018/07/31(火) 22:33:40 ID:blrNkcGP0.net
日本語としてまず例えにクラスを使うなよ
8 :以下、?ちゃんねるからVIPがお送りします 2018/07/31(火) 22:34:03 ID:+4Sedr4za.net
読む側が都合よく補正してくれれば合ってるけど何言いたいかわかりにくい
9 :以下、?ちゃんねるからVIPがお送りします 2018/07/31(火) 22:34:32 ID:HowWwDVzM.net
Cで書ければ完璧
10 :以下、?ちゃんねるからVIPがお送りします 2018/07/31(火) 22:35:08 ID:8zXtTy0P0.net
で、犬とぼくのクラスの中に犬とぼくが存在しているかのフラグを作るじゃん?
さらにx座標と、y座標を作るとさらに1階、2階のzフラグも作るじゃん?
これはぼくと犬がどこにいるかを現す座標じゃん?
ここまではあってる?
11 :以下、?ちゃんねるからVIPがお送りします 2018/07/31(火) 22:35:11 ID:QnmX0JRm0.net
頭が痛くなる
畑が違い過ぎる
13 :以下、?ちゃんねるからVIPがお送りします 2018/07/31(火) 22:37:38 ID:8zXtTy0P0.net
まず犬クラスを見よう
コンストラクタにフラグはFALSEにする、z、y、zも0を入れとく
これにより宣言されても犬は居ないことになるじゃん?
で、犬POP関数を作り
もし呼ばれたらフラグをTRUEにするじゃん?
さらに犬のXYZ関数を作り座標を入力してあげるじゃん?
ここまではあってる?
14 :以下、?ちゃんねるからVIPがお送りします 2018/07/31(火) 22:40:15 ID:4WSbtcmE0.net
>>13
お前は自分の座標を知っているのか?
15 :以下、?ちゃんねるからVIPがお送りします 2018/07/31(火) 22:40:40 ID:8zXtTy0P0.net
さらに家、犬、ぼくを宣言したクラスで
Draw関数を作るじゃん?
で、家と犬とぼく関数の中にそれぞれ表示するDraw関数を作るじゃん?
で、もしFLG(存在しているか)がTRUEならDraw関数の中で表示するようにするじゃん?
さらに家、犬、ぼくを宣言したクラスのDraw関数の中で、家、犬、ぼくのDraw関数を呼び出すじゃん?
これによりFLAGがTRUEなら家が表示されて、犬とぼくも表示されるじゃん?
ここまであってる?
17 :以下、?ちゃんねるからVIPがお送りします 2018/07/31(火) 22:43:46 ID:8zXtTy0P0.net
さらに家、犬、ぼくを宣言したクラスでUpdateクラスを作るじゃん?
ぼくと犬クラスの中にもUpdateクラスを用意して呼び出すじゃん?
犬は寝る、歩く、食べる関数を作ってFLAGを1個用意してランダムにどれかを呼び出すじゃん?
そうすると画面の中で犬が勝手に寝るか歩くか食べる関数を呼び出してランダムに行動し始めるじゃん?
18 :以下、\(^o^)/でVIPがお送りします 2018/07/31(火) 22:44:02 ID:vFDlnk+Z0.net
はい
19 :以下、?ちゃんねるからVIPがお送りします 2018/07/31(火) 22:46:36 ID:8zXtTy0P0.net
犬の中の寝る関数の場合
時間変数を作ってさらに時間カウント変数を作るじゃん?
犬の中の寝る関数が呼び出された瞬間初期化するじゃん?
さらにランダムに時間変数に1~3時間くらいを入力していれるじゃん?
で、あとはその時間までこいつは寝るように
さらにエフェクトクラスを作るじゃん?
で、エフェクトクラスの中の寝る関数に犬の座標を送って
表示させて犬の上に表示するじゃん?
20 :以下、\(^o^)/でVIPがお送りします 2018/07/31(火) 22:48:12 ID:vFDlnk+Z0.net
はい
21 :以下、?ちゃんねるからVIPがお送りします 2018/07/31(火) 22:49:55 ID:8zXtTy0P0.net
で、さらに犬の歩く関数の場合
ランダムを用意してどっかの方向にランダムに歩くじゃん?
その時に障害物があるかもしれないから家クラスから家の間取りマップを貰わないといけないじゃん?
dog.update(家クラス.家の間取りマップ);←これに家の間取りマップを引数として書くじゃん?
で、犬が歩く方向に障害物がなければ歩くようにするじゃん?
ここまではあってる?
22 :以下、\(^o^)/でVIPがお送りします 2018/07/31(火) 22:50:26 ID:vFDlnk+Z0.net
はい
23 :以下、?ちゃんねるからVIPがお送りします 2018/07/31(火) 22:53:01 ID:8zXtTy0P0.net
さらに
犬を2匹宣言した時に歩く時に重なる可能性あるじゃん?
つまり犬も障害物にしないといけないじゃん?
つまり家クラスの中に間取りクラスと実際に歩けるかの座標マップも作らないといけないのか
納得した
25 :以下、?ちゃんねるからVIPがお送りします 2018/07/31(火) 22:55:53 ID:NyhD/tFa0.net
そのまんまRPGツクールで実装できそう
27 :以下、?ちゃんねるからVIPがお送りします 2018/07/31(火) 22:58:03 ID:8zXtTy0P0.net
オブジェクト指向の場合さらにあらたに当たり判定マップがいるのか
28 :以下、?ちゃんねるからVIPがお送りします 2018/07/31(火) 23:05:39 ID:BWCcQQKM0.net
ぼくは人クラスのインスタンスな
人も犬も家もdrawってメソッド持ってるならDrawableインターフェース作ってそれをインプリすべき
29 :以下、?ちゃんねるからVIPがお送りします 2018/07/31(火) 23:09:09 ID:8zXtTy0P0.net
>>28
何言ってるのかよくわからない
30 :以下、?ちゃんねるからVIPがお送りします 2018/07/31(火) 23:11:53 ID:8zXtTy0P0.net
オブジェクト指向難しすぎるもういやだ
31 :以下、?ちゃんねるからVIPがお送りします 2018/07/31(火) 23:13:33 ID:BWCcQQKM0.net
存在フラグとかいらんだろ
家クラスのインスタンスから犬のインスタンスや人のインスタンスにnull代入をもって存在しない事にすればいい
犬や人クラスに座標を持たせるのではなく空間クラスのインスタンス中にオブジェクトを座標指定で複数配置できるようにすべき
そうしないと家や人や犬のインスタンス全部見なきゃどこに何があるか分からなくなるし
32 :以下、?ちゃんねるからVIPがお送りします 2018/07/31(火) 23:15:33 ID:8zXtTy0P0.net
>>31
犬やぼくに座標を持たせず
空間クラスを作るほうがいいの?
NULLを入れておけばいいってのはよくわからない
38 :以下、?ちゃんねるからVIPがお送りします 2018/07/31(火) 23:22:17 ID:BWCcQQKM0.net
>>32
家のインスタンスに人のインスタンスや犬のインスタンスをメンバ変数として持たせるんだろ?
それをもって「存在している」と定義する
家インスタンスに持たせた人や犬のメンバ変数がnullなら存在していないとみなす
それだけ
39 :以下、?ちゃんねるからVIPがお送りします 2018/07/31(火) 23:23:16 ID:8zXtTy0P0.net
>>38
いや家のなかで犬とぼくは宣言しない
さらにフラグ使えばいいだけなので却下
44 :以下、?ちゃんねるからVIPがお送りします 2018/07/31(火) 23:30:35 ID:BWCcQQKM0.net
>>39
じゃあ空間のインスタンスに家や人や犬インスタンスをセットしたら存在してるってて意義だな
フラグとかオブジェクト指向的じゃないし
33 :以下、?ちゃんねるからVIPがお送りします 2018/07/31(火) 23:16:40 ID:8zXtTy0P0.net
当たり判定がものすごくごちゃつく
さらに犬を増やすとさらにごちゃつく
34 :以下、?ちゃんねるからVIPがお送りします 2018/07/31(火) 23:17:55 ID:8zXtTy0P0.net
いっそのこと最初の犬と家とぼくを定義したクラスで当たり判定して
可能なら歩けって感じにしたほうがいいのか悩む
37 :以下、?ちゃんねるからVIPがお送りします 2018/07/31(火) 23:20:28 ID:8zXtTy0P0.net
ダメだ全然わかんない
40 :以下、?ちゃんねるからVIPがお送りします 2018/07/31(火) 23:25:33 ID:8zXtTy0P0.net
最初はぼくも家の中で犬とぼくを宣言したんだけど
家もクラスにしてその3つを宣言するクラスを用意したほうがいいと気づいたんだよ
41 :以下、?ちゃんねるからVIPがお送りします 2018/07/31(火) 23:28:03 ID:8zXtTy0P0.net
そうすることでさらに家を増やせる
42 :以下、?ちゃんねるからVIPがお送りします 2018/07/31(火) 23:28:23 ID:sFElt3ScM.net
NULL嫌いなんか
45 :以下、?ちゃんねるからVIPがお送りします 2018/07/31(火) 23:31:50 ID:8zXtTy0P0.net
>>42
フラグでいいじゃん
犬クラスフラグを用意して
TRUEなら表示やUPDATE処理を行う
FALSEならランダムPOPも可能になる
NULLってのがまずそもそも意味がわからない
動的に作り出すというならそこまでオブジェクト指向理解してない
43 :以下、?ちゃんねるからVIPがお送りします 2018/07/31(火) 23:30:26 ID:8zXtTy0P0.net
3つを宣言するクラスを空間クラスにしたらいいのかな?
その空間クラスで当たり判定をして可能ならば各種のクラスの関数を呼び出す
47 :以下、?ちゃんねるからVIPがお送りします 2018/07/31(火) 23:33:59 ID:8zXtTy0P0.net
動的に関しては知らん・・・
無限に犬がわくってのが最終的にはいんだと思うけど
48 :以下、?ちゃんねるからVIPがお送りします 2018/07/31(火) 23:43:21 ID:8zXtTy0P0.net
勉強が圧倒的に足りないんだろうな・・・もうやりたくない