[過去ログ] ゲーム制作 雑談スレ【part31】 (1002レス)
上下前次1-新
抽出解除 レス栞
このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
766(4): 名前は開発中のものです。 [] 2024/12/14(土) 19:07:43.36 ID:MNJpJ+iV(13/41) AAS
>>760760(2): 名前は開発中のものです。 [sage] 2024/12/14(土) 18:28:56.04 ID:nya+qNWS(4/12) AAS
>>743
>例えば「敵base」が基底クラスで「敵a」「敵b」と量産するとする
>そうしたらまず敵baseにどの処理を置くか、派生クラスに何を回すか
>ってのを決めないといけない
>そこで硬直化してしまうのよな
普通は、先に「敵a」作って、その後「敵b」作ろうとするよな?その時に共通項目を「敵base」に移すだけじゃん。そんなに悩むかそこ?
また敵が増えていく度に同じ実装する方が可読性下がるし、後からコーディングの改良点に気付いた時に、全部の敵について同じ個所を直すのは大変だぞ
>後からcを作った時「やっぱりbaseのものをcで設定したい」とか出てくる
メソッドを同名同引数でオーバーライドすりゃいいだけじゃん。
何ならオーバーライドしたメソッド内で、先に基底クラスの同名メソッド呼んで、その後に変えたい部分を設定し直せばいい。
例えばですね、ダメージを受けて点滅させる処理をつけるとするでしょう?
「ダメージ受けるのはみんな同じだから共通処理にしよう」と作ったとします
で、作ってるうちに「やっぱこの敵だけ点滅の色を変えたい」と思ったとします
もし敵キャラをすでに数十匹作った後だったとしたらどうやって
一部キャラだけ点滅具合を変更しますか?
点滅処理は基底クラスに置いてるのでそれは動かせないじゃないですか
770(1): 名前は開発中のものです。 [sage] 2024/12/14(土) 19:15:32.11 ID:HLWcS2Ch(6/10) AAS
>>766
そういうのはChatGPTに聞けば優しく教えてくれるぞ
772(1): 名前は開発中のものです。 [sage] 2024/12/14(土) 19:26:10.37 ID:nya+qNWS(6/12) AAS
>>766
>一部キャラだけ点滅具合を変更
そういう場合は、Initメソッドをオーバーライドして(つまり基底クラスにも子供クラスにも同名メソッドを用意して)、点滅仕様(色とかタイミングとか)の処理を分ければいいんだよ
基底クラスのInitでは標準的な点滅仕様で初期設定して、子供クラスのInitでは独自の点滅仕様をカスタマイズする感じな
792(1): 名前は開発中のものです。 [] 2024/12/14(土) 20:09:53.68 ID:anW5RrAZ(13/22) AAS
出来ないレベルで糞とか言ってる時点でおかしいだろう
>>766 ダメージ与えたときにインターフェイスのアウトプットで点滅フラグ、ボスフラグ等でBaseクラスで分岐すればいいじゃん?。
803(1): 名前は開発中のものです。 [sage] 2024/12/14(土) 20:34:11.22 ID:b+NtphSs(2/6) AAS
>>766
そもそもダメージクラスか点滅クラスで作っているはず。あとはそこで分岐するだけでは?
途中から見ただけなので見当違いだったらごめんね。
上下前次1-新書関写板覧索設栞歴
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル
ぬこの手 ぬこTOP 0.040s