[過去ログ]
【軽量】godot engine - part2 (1002レス)
上
下
前
次
1-
新
このスレッドは過去ログ倉庫に格納されています。
次スレ検索
歴削→次スレ
栞削→次スレ
過去ログメニュー
784
: 2024/01/25(木)21:16
ID:kXZori1n(1)
AA×
[
240
|
320
|
480
|600|
100%
|
JPG
|
べ
|
レス栞
|
レス消
]
784: [sage] 2024/01/25(木) 21:16:25.06 ID:kXZori1n Resourceクラスを継承したオリジナルのstatus.tresを作成し、それをベースキャラクターノードの派生ノードに保持させる事で擬似的なコンポーネントパターンのようなものを実現したと思っていました しかしこれらは設計として非常に便利なのですが、保持している変数が同じ値を参照してしまいspankbangます そのせいで別々に実体化した敵キャラが同時に死んだり、同じタイミングでqueue_free() されてしまい困ります これを防ぐにはどうしたら良いのでしょうか……? Resourceを個別に実体化する等はは可能なのでしょうか? どうか教えていただきたいです 簡単な設計としては以下のようなものです stats.tres ∟var hit-point ∟func Damage()→もしhit-pointがゼロになったらHP-is-ZEROをemit ∟signal HP-is-ZERO Enemy.tscn ∟@export var stats:Resource→インスペクタ上でstats.tresをドラッグドロップ ∟func _ready()→ HP-is-ZEROをPopにコネクト ∟func Pop()→自身をqueue_free() 変数のヒットポイントは全てのEnemyインスタンスで共通してしまい、シングルトンを参照したみたいになってしまいます……orz おそらくシグナルも同時に飛ばされている筈…… http://mevius.5ch.net/test/read.cgi/gamedev/1619755427/784
クラスを継承したオリジナルのを作成しそれをベースキャラクターノードの派生ノードに保持させる事で擬似的なコンポーネントパターンのようなものを実現したと思っていました しかしこれらは設計として非常に便利なのですが保持している変数が同じ値を参照してしまいます そのせいで別に実体化した敵キャラが同時に死んだり同じタイミングで されてしまい困ります これを防ぐにはどうしたら良いのでしょうか? を個別に実体化する等はは可能なのでしょうか? どうか教えていただきたいです 簡単な設計としては以下のようなものです もしがゼロになったらを インスペクタ上でをドラッグドロップ をにコネクト 自身を 変数のヒットポイントは全てのインスタンスで共通してしまいシングルトンを参照したみたいになってしまいます おそらくシグナルも同時に飛ばされている筈
上
下
前
次
1-
新
書
関
写
板
覧
索
設
栞
歴
あと 218 レスあります
スレ情報
赤レス抽出
画像レス抽出
歴の未読スレ
AAサムネイル
ぬこの手
ぬこTOP
0.034s