mirror of
https://github.com/Rundll86/Dog-Lynx-And-HCN.git
synced 2026-05-27 22:41:56 +08:00
feat(Debug): 添加FeedHasField调试组件及调整苹果掉落数量
添加FeedHasField调试组件用于筛选特定字段的Feed,支持ALL和ANY两种组合模式 将EntityBase中苹果掉落数量上限从3调整为2
This commit is contained in:
@@ -0,0 +1,33 @@
|
||||
@tool
|
||||
extends HBoxContainer
|
||||
|
||||
enum ComposeMode {
|
||||
ALL,
|
||||
ANY,
|
||||
}
|
||||
|
||||
@export var targetFields: Array[FieldStore.Entity] = []
|
||||
@export var composeMode: ComposeMode = ComposeMode.ALL
|
||||
|
||||
func _ready():
|
||||
for i in get_children():
|
||||
i.queue_free()
|
||||
var files = DirTool.listdir("res://components/Feeds/")
|
||||
for file in files:
|
||||
var passed: bool
|
||||
var feed = load(file).instantiate() as Feed
|
||||
for targetField in targetFields:
|
||||
var haveThis = false
|
||||
for feedField in feed.fields:
|
||||
if feedField == targetField:
|
||||
haveThis = true
|
||||
break
|
||||
passed = haveThis
|
||||
if composeMode == ComposeMode.ALL:
|
||||
if not passed:
|
||||
break
|
||||
elif composeMode == ComposeMode.ANY:
|
||||
if passed:
|
||||
break
|
||||
if passed:
|
||||
add_child(feed)
|
||||
Reference in New Issue
Block a user